aboutsummaryrefslogtreecommitdiff
path: root/files/de/einrichten_einer_entwicklungsumgebung_für_erweiterungen/index.html
diff options
context:
space:
mode:
Diffstat (limited to 'files/de/einrichten_einer_entwicklungsumgebung_für_erweiterungen/index.html')
-rw-r--r--files/de/einrichten_einer_entwicklungsumgebung_für_erweiterungen/index.html102
1 files changed, 102 insertions, 0 deletions
diff --git a/files/de/einrichten_einer_entwicklungsumgebung_für_erweiterungen/index.html b/files/de/einrichten_einer_entwicklungsumgebung_für_erweiterungen/index.html
new file mode 100644
index 0000000000..fec703c13a
--- /dev/null
+++ b/files/de/einrichten_einer_entwicklungsumgebung_für_erweiterungen/index.html
@@ -0,0 +1,102 @@
+---
+title: Einrichten einer Entwicklungsumgebung für Erweiterungen
+slug: Einrichten_einer_Entwicklungsumgebung_für_Erweiterungen
+tags:
+ - Erweiterungen
+translation_of: Archive/Add-ons/Setting_up_extension_development_environment
+---
+<p>Dieser Artikel soll Anregungen geben wie Sie ihre Mozilla-Anwendung zur Entwicklung von Erweiterungen einrichten können. Dieser Artikel bezieht sich sowohl auf Firefox als auch auf Thunderbird und SeaMonkey in der Version 2.0 und höher.</p>
+<h3 id="Überblick">Überblick</h3>
+<ul>
+ <li>Erstellen Sie ein <a href="#Entwicklerprofil">Entwicklerprofil</a>, um Ihren Firefox mit <a href="#Entwicklungseinstellungen">Entwicklungseinstellungen</a> in <code>about:config</code> auszustatten.</li>
+ <li>Installieren Sie einige <a href="#Erweiterungen_für_Entwickler">Erweiterungen für Entwickler</a> in Ihrem Entwicklerprofil.</li>
+ <li>Bearbeiten Sie die Erweiterungsdateien und starten Sie die Anwendung mit Ihrem Entwicklerprofil.</li>
+</ul>
+<h3 id="Entwicklerprofil">Entwicklerprofil</h3>
+<p>Um die Geschwindigkeitseinbußen durch Einstellungen und Erweiterungen zu Entwicklung sowie den Verlust persönlicher Daten zu vermeiden, sollten Sie ein gesondertes Entwicklerprofil einrichten.</p>
+<p>Sie können zwei Firefox-Instanzen mit unterschiedlichen Profilen nutzen, wenn Sie den Browser mit dem <code>-no-remote</code> Parameter starten. Beispielsweise können Sie mit dem folgenden Befehl Ihr Entwicklerprofil, von dem wir annehmen, dass es "dev" heißt, unabhängig davon starten, ob bereits eine "normale" Instanz von Firefox läuft oder nicht:</p>
+<p>Unter Ubuntu (und vielen anderen Linux Distributionen):</p>
+<pre>/usr/bin/firefox -no-remote -P dev</pre>
+<p>Unter einigen anderen Distributionen von Linux/Unix:</p>
+<pre>/usr/local/bin/firefox -no-remote -P dev
+</pre>
+<p>Unter Mac:</p>
+<pre class="eval">/Applications/Firefox.app/Contents/MacOS/firefox-bin -no-remote -P dev &amp;
+</pre>
+<p>Unter Windows:</p>
+<pre class="eval">Start -&gt; Ausführen "%ProgramFiles%\Mozilla Firefox\firefox.exe" -no-remote -P dev
+</pre>
+<p>Unter Windows 64 bit:</p>
+<pre class="eval">Start -&gt; Run "%ProgramFiles(x86)%\Mozilla Firefox\firefox.exe" -no-remote -P dev</pre>
+<p>Um Thunderbird oder SeaMonkey zu starten, muss "Firefox" in den Beispielen entsprechend ersetzt werden.</p>
+<p>Wenn das Profil noch nicht besteht wird es automatisch erstellt. Um Firefox wie gewöhnlich zu starten, kann einfach "firefox" oder "firefox -P default" verwendet werden.</p>
+<p>Außerdem können gleichzeitig verschiedene Versionen des Firefox installiert werden, um die Kompatibilität der Erweiterung zu testen. Es können sogar stabile Versionen sowie die aktuelle Entwicklerversion auf einem System installiert werden.</p>
+<p><strong>Siehe auch:</strong> <a class="external" href="http://forums.mozillazine.org/viewtopic.php?t=613873">Installing Firefox 3 or Minefield while keeping Firefox 2 (englisch)</a></p>
+<p>Um mehrere Restarts zu vereinfachen, kann ein Profil für den regulären Gebrauch und ein zweites Für das Testen von Erweiterungen verwendet werden. Durch das "<code>no-remote" </code><span style="font-family: monospace;">K</span>ommando können beide Profile gleichzeitig ausgeführt werden. Eine Beschreibung findet sich unter <a class="external" href="http://kb.mozillazine.org/Command_line_arguments" title="http://kb.mozillazine.org/Command_line_arguments">http://<span>kb.mozillazine.org/Command_line_arguments</span></a>.<span> Diese beiden Verknüpfungen für Windows sind dazu sehr hilfreich:</span></p>
+<p><code><span>...firefox.exe -no-remote -p "profile1"</span></code></p>
+<p><code><span>...firefox.exe -no-remote -p "profile2"</span></code></p>
+<div class="note">
+ Diese Zeilen sind Windows-spezifisch. Wenn Sie die gleichen Anweisungen für Linux / Mac OS / etc haben, fügen Sie diese doch hier hinzu.</div>
+<p><span>Ersetzen Sie "..." mit einem regulären Pfad. Erstellen Sie beide Verknüpfungen und schon ist es sehr einfach beide Profile gleichzeitig zu verwenden.</span></p>
+<h3 id="Entwicklungseinstellungen">Entwicklungseinstellungen</h3>
+<p>Diese Einstellungen erleichtern das Debuggen auf Kosten sinkender Geschwindigkeit.</p>
+<p>Unter <a class="external" href="http://support.mozilla.com/en-US/kb/Editing+configuration+files">Editing Configuration Files</a> und <a class="external" href="http://www.firefox-browser.de/wiki/About:config">About:config Einstellungen</a> finden sich weitere Informationen wie Einstellungen vorgenommen werden können. Beachten Sie, dass nicht alle relevanten Einstellungen defaultmäßig unter <code>about:config</code> angezeigt werden. Daher müssen für diese Einstellungen neue Einträge (boolean) angelegt werden.</p>
+<p>Diese Änderungen sollten nur in einem gesondert angelegtem <a href="/de/Einrichten_einer_Entwicklungsumgebung_für_Erweiterungen#Entwicklerprofil" title="de/Einrichten_einer_Entwicklungsumgebung_für_Erweiterungen#Entwicklerprofil"> Entwicklerprofil</a> gemacht werden.</p>
+<ul>
+ <li><strong>javascript.options.showInConsole</strong> = <strong>true</strong>. Logt Fehler in Chrome-Dateien in die <a href="/de/Fehlerkonsole" title="de/Fehlerkonsole">Fehlerkonsole</a></li>
+ <li><strong>nglayout.debug.disable_xul_cache</strong> = <strong>true</strong>. Deaktiviert den XUL Cache damit Änderungen an Fenstern und Dialogen ohne Neustart übernommen werden. Dazu müssen zur Entwicklung <a href="#Verzeichnisse_statt_JAR-Archiven_benutzen">Verzeichnisse statt JAR-Archive benutzt werden</a>. Änderungen an XUL-Overlays werden dennoch nur nach dem erneuten Laden des überlagerten Dokumentes übernommen.</li>
+ <li><strong>browser.dom.window.dump.enabled</strong> = <strong>true</strong>. Erlaubt die Nutzung von {{ Domxref("window.dump", "dump()") }}, um direkt auf die Standardkonsole zu schreiben. Sie können innerhalb privilegierter Skripte auch {{ Interface("nsIConsoleService") }} benutzen.</li>
+ <li><strong>javascript.options.strict</strong> = <strong>true</strong>. Aktiviert JavaScript strict Warnungen in der Fehlerkonsole. Viele haben diese Einstellungen während der Entwicklung leider deaktiviert. Daher werden Sie, zusätzlich zu den Warnungen in Bezug auf den Code, viele Warnungen zu Problemen im Code anderer Erweiterungen bekommen. Diese können mit <a class="link-https" href="https://addons.mozilla.org/de/firefox/addon/1815">Console<sup>2</sup></a> gefiltert werden.</li>
+ <li><strong>extensions.logging.enabled</strong> = <strong>true</strong>. Diese Einstellung aktiviert detailliertere Meldungen der Fehlerkonsole über Installations- und Updateprobleme.</li>
+ <li><strong>nglayout.debug.disable_xul_fastload = true</strong>. Für Gecko 2.0+ (Firefox 4.0+). Siehe <a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=531886" title="https://bugzilla.mozilla.org/show_bug.cgi?id=531886">diesen Bug</a> für weitere Informationen.</li>
+ <li>Eventuell wollen Sie auch <strong>dom.report_all_js_exceptions = true</strong> setzen. Siehe <a class="internal" href="/en/Exception_logging_in_JavaScript" title="en/Exception logging in
+ JavaScript">Exception logging in JavaScript</a> für weitere Details.</li>
+</ul>
+<div class="geckoVersionNote">
+ <p>{{ gecko_callout_heading("2.0") }}</p>
+ <p>Die Fehlerkonsole ist ab Firefox 4 standardmäßig deaktiviert. Sie können sie wieder aktivieren, indem Sie <code>devtools.errorconsole.enabled</code> auf <code>true</code> setzen und den Browser neu starten. Damit wird außerdem standardmäßig<code> javascript.options.showInConsole</code> auf <code>true</code> gesetzt.</p>
+</div>
+<h3 id="Erweiterungen_für_Entwickler">Erweiterungen für Entwickler</h3>
+<p>Diese Erweiterungen könnten bei der Entwicklung helfen:</p>
+<ul>
+ <li><a class="link-https" href="https://addons.mozilla.org/en-US/firefox/addon/6622" title="https://addons.mozilla.org/en-US/firefox/addon/6622">DOM Inspector</a>, Anschauen und Bearbeiten des DOM von jedem Dokument oder XUL Anwendung (Firefox und Thunderbird)</li>
+ <li><a class="external" href="http://www.hacksrus.com/~ginda/venkman/" title="http://www.hacksrus.com/~ginda/venkman/">Venkman</a>, ein JavaScript Debugger (<a class="external" href="http://addons.mozilla.org/en-US/firefox/addon/216" title="http://addons.mozilla.org/en-US/firefox/addon/216">Firefox Version</a>, <a class="external" href="http://addons.mozilla.org/en-US/thunderbird/addon/216" title="http://addons.mozilla.org/en-US/thunderbird/addon/216">Thunderbird Version</a>)</li>
+ <li><a class="link-https" href="https://addons.mozilla.org/en-US/firefox/addon/7434/">Extension Developer's Extension</a> ein Sammlung von Tools zur Erweiterungsentwicklung (Firefox)</li>
+ <li><a class="external" href="http://console2.mozdev.org/" title="http://console2.mozdev.org/">Console<sup>2</sup></a> verbesserte JavaScript Konsole (<a class="external" href="http://addons.mozilla.org/en-US/firefox/addon/1815" title="http://addons.mozilla.org/en-US/firefox/addon/1815">Firefox Version</a>, <a class="external" href="http://addons.mozilla.org/en-US/thunderbird/addon/1815" title="http://addons.mozilla.org/en-US/thunderbird/addon/1815">Thunderbird Version</a>)</li>
+ <li><a class="link-https" href="https://addons.mozilla.org/firefox/addon/5058" title="https://addons.mozilla.org/firefox/addon/5058">Javascript Command</a> schreiben/testen von JavaScript für Firefox Fenster</li>
+ <li><a class="external" href="http://www.gijsk.com/" title="http://www.gijsk.com/">Chrome List</a> Datei unter chrome:// durchsuchen (<a class="external" href="http://addons.mozilla.org/en-US/firefox/addon/4453" title="http://addons.mozilla.org/en-US/firefox/addon/4453">Firefox Version</a>, <a class="external" href="http://addons.mozilla.org/en-US/thunderbird/addon/4453" title="http://addons.mozilla.org/en-US/thunderbird/addon/4453">Thunderbird Version</a>)</li>
+ <li><a class="external" href="http://webdesigns.ms11.net/chromeditp.html" title="http://webdesigns.ms11.net/chromeditp.html">Chrome Edit Plus </a> Dateieditor (Firefox and Thunderbird)</li>
+ <li><a class="link-https" href="https://addons.mozilla.org/en-US/developers/tools/builder" title="https://addons.mozilla.org/en-US/developers/tools/builder">Add-on Builder</a> eine Web-basierte Anwendung, welche ein Erweiterungsgrundgerüst erstellt (Firefox, Thunderbird und weitere)</li>
+ <li><a class="link-https" href="https://addons.mozilla.org/firefox/addon/1843">Firebug</a> eine Vielzahl an Entwicklertools (Firefox)</li>
+ <li><a class="external" href="http://getfirebug.com/releases" title="http://getfirebug.com/releases">Chromebug</a> JavaScript und DOM Debugger (Firefox, "kinda works for Thunderbird")</li>
+ <li><a class="external" href="http://hyperstruct.net/projects/mozrepl" title="http://hyperstruct.net/projects/mozrepl">MozRepl</a> Firefox und andere Anwendung bearbeiten, während diese laufen (Firefox and Thunderbird)</li>
+ <li><a class="external" href="http://www.mouseless.de/index.php?/content/view/18/31/" title="http://www.mouseless.de/index.php?/content/view/18/31/">ExecuteJS</a> eine verbesserte JavaScript Konsole (<a class="link-https" href="https://addons.mozilla.org/firefox/addon/1729" title="https://addons.mozilla.org/firefox/addon/1729">Firefox Version</a>, <a class="external" href="http://xsidebar.mozdev.org/modifiedmisc.html#executejs">Thunderbird Version</a>)</li>
+ <li><a class="external" href="http://xpcomviewer.mozdev.org">XPCOMViewer</a> ein XPCOM Inspektor (Firefox und Thunderbird)</li>
+ <li><a class="internal" href="/en/JavaScript/Shells" title="En/JavaScript shells">JavaScript shells</a> JavaScript Codeschnipsel testen (Firefox und Thunderbird)</li>
+ <li><a class="link-https" href="https://addons.mozilla.org/en-US/firefox/addon/5817" title="https://addons.mozilla.org/en-US/firefox/addon/5817">SQLite Manager</a> SQLite Datenbanken verwalten (Firefox und Thunderbird)</li>
+ <li><a class="external" href="http://www.rumblingedge.com/viewabout/" title="http://www.rumblingedge.com/viewabout/">ViewAbout</a> Aktiviert Zugang zu verschiedenen "about:" Dialogen aus dem View Menü (<a class="link-https" href="https://addons.mozilla.org/en-US/firefox/addon/9695" title="https://addons.mozilla.org/en-US/firefox/addon/9695">Firefox Version</a>, <a class="link-https" href="https://addons.mozilla.org/en-US/thunderbird/addon/9695" title="https://addons.mozilla.org/en-US/thunderbird/addon/9695">Thunderbird Version</a>)</li>
+ <li><span class="content"><span class="title"><a class="external" href="http://code.google.com/p/crashme/" title="http://code.google.com/p/crashme/">Crash Me Now!</a> </span></span>Nützlich zum Testen des Crash Reporting Systems (Firefox und Thunderbird)</li>
+</ul>
+<h3 id="Erweiterung_in_benutzerdefiniertem_Verzeichnis">Erweiterung in benutzerdefiniertem Verzeichnis</h3>
+<p>Anstatt nach jeder Änderung die Erweiterung neu zu installieren und als Schutz vor versehentlichem Löschen, wenn die Anwendung deinstalliert wird, können Sie ein Verzeichnis außerhalb des Profils an einem beliebigen Ort einrichten.</p>
+<ol>
+ <li>Suchen Sie in der in der Erweiterung enthaltenen <code>install.rdf</code> die ID der Erweiterung</li>
+ <li>Erstellen Sie eine leere Datei in dem das_profil_verzeichnis/extensions/ mit der ID als Dateiname. (z.B. <a class="link-mailto" href="mailto:'das_profil_verzeichnis/extensions/i...r@mozilla.org'" rel="freelink">'das_profil_verzeichnis/extensions/i...r@mozilla.org'</a>) <span style="white-space: nowrap;"><a class="external" href="http://www.firefox-browser.de/wiki/Profilverzeichnis#Wo_finde_ich_meinen_Profilordner.3F">Wo finde ich meinen Profilordner?</a></span></li>
+ <li>In dieser Datei wird dann einfach der vollständige Pfad zur <code>install.rdf</code> gespeichert.
+ <p>z.B. Linux:</p>
+ <pre class="eval">/full/path/to/yourExtension
+</pre>
+ <p>Oder Windows:</p>
+ <pre class="eval">C:\sam\workspace\toolbar\helloWorldtoolbar\
+</pre>
+ </li>
+ <li>Platzieren Sie die Datei in den Erweiterungsordner und starten Sie die Anwendung</li>
+</ol>
+<h3 id="Verzeichnisse_statt_JAR-Archiven_benutzen">Verzeichnisse statt JAR-Archiven benutzen</h3>
+<p>Unabhängig davon, ob Sie Erweiterungsdateien in ein JAR-Archiv oder Verzeichnisse packen, ist es einfacher in einem Verzeichnis zu entwickeln. Auch wenn Sie sich für ein JAR-Archiv für die Veröffentlichung entscheiden, können Sie trotzdem in einem Verzeichnis entwickeln, indem Sie Ihr chrome.manifest ändern.</p>
+<p>JAR-Archiv:</p>
+<pre class="eval">content myExtension jar:chrome/myExtension.jar!/content/
+</pre>
+<p>Verzeichnis:</p>
+<pre class="eval">content myExtension chrome/content/
+</pre>