<?xml version="1.0" encoding="UTF-8"?> <rss
version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
> <channel><title>niebegeg.net &#187; Java</title> <atom:link href="http://niebegeg.net/tags/java/feed/" rel="self" type="application/rss+xml" /><link>http://niebegeg.net</link> <description>Mein Leben im Entwicklerland</description> <lastBuildDate>Mon, 06 Feb 2012 20:30:16 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.3.1</generator> <item><title>Wieder mal ge&#8221;Perl&#8221;t &#8211; Aufbaukurs am ZGDV</title><link>http://niebegeg.net/2008/09/24/wieder-mal-geperlt-aufbaukurs-am-zgdv/</link> <comments>http://niebegeg.net/2008/09/24/wieder-mal-geperlt-aufbaukurs-am-zgdv/#comments</comments> <pubDate>Wed, 30 Nov -0001 00:00:00 +0000</pubDate> <dc:creator>Dirk Rüdiger</dc:creator> <category><![CDATA[Und sonst so]]></category> <category><![CDATA[Eclipse]]></category> <category><![CDATA[EPIC]]></category> <category><![CDATA[Java]]></category> <category><![CDATA[Kurs]]></category> <category><![CDATA[PDE]]></category> <category><![CDATA[Perl]]></category> <category><![CDATA[Plugin]]></category> <category><![CDATA[ZGDV]]></category> <guid
isPermaLink="false"></guid> <description><![CDATA[In unregelmäßigen Abständen halte ich ja am ZGDV Rostock zwei Seminare: &#8220;Perl Grundlagen&#8221; und &#8220;Perl Aufbaukurs&#8221;. Und am 18. und 19.09.2008 war es wieder mal soweit &#8211; ein &#8220;Aufbaukurs&#8221; war angesagt. Ich hatte mich nach dem leztzten Kurs dazu entscheden, den Abschnitt &#8220;Objektorientiertes Perl in 4 Stunden&#8221; rauszunehmen und durch einen Exkurs in die Themen [...]]]></description> <content:encoded><![CDATA[<div
class="field field-type-filefield field-field-image"><div
class="field-items"><div
class="field-item odd"> <a
href="/wp-content/uploads/camel_0.png" title="Perl-Kurs am ZGDV" class="thickbox" rel="gallery-86"><img
src="/wp-content/uploads/camel_0.png" alt="" title="Perl-Kurs am ZGDV"  class="imagecache imagecache-preview" width="97" height="97" /></a></div></div></div><p>In unregelmäßigen Abständen halte ich ja am <a
href="http://www.zgdv.de/zgdv/Seminar/Rostock"><span
class="caps">ZGDV</span> Rostock</a> zwei Seminare: &#8220;Perl Grundlagen&#8221; und &#8220;Perl Aufbaukurs&#8221;. Und am 18. und 19.09.2008 war es wieder mal soweit &#8211; ein &#8220;Aufbaukurs&#8221; war angesagt.</p><p>Ich hatte mich nach dem leztzten Kurs dazu entscheden, den Abschnitt &#8220;Objektorientiertes Perl in 4 Stunden&#8221; rauszunehmen und durch einen Exkurs in die Themen &#8220;Testen&#8221; und &#8220;Erstellen einer Distribution&#8221; zu ersetzen. Da mir erst wenige Tage vor dem Kurs einfiel, dass ich ein Jahr zuvor die Agenda geändert hatte, war auf den letzten Drücker ganz schön was zu tun!</p><p>Aber es hat mir wiedermal viel Spaß gemacht, &#8220;meine&#8221; Kursteilnehmer schienen auch zufrieden. Und ich hoffe, den Leuten im Kurs mit <i>Testgetriebener Entwicklung von Perl-Modulen</i> so richtig den Mund wässrig geredet zu haben.</p><p>Und noch etwas war neu: Statt auf das Duo &#8220;Notepad und Kommandozeile&#8221; (die Kurse finden an Windows-PCs mit <a
href="http://www.activestate.com/Products/activeperl/">ActiveState Perl</a> statt) habe ich <a
href="http://www.eclipse.org/">Eclipse</a> mit dem <a
href="http://perlipse.googlecode.com/">Perlipse-Plugin</a> eingesetzt. Und auch das war eine gute Entscheidung. Wenngleich ich beim nächsten Mal auf <a
href="http://e-p-i-c.sf.net">E-P-I-C</a> setzen werde &#8211; das ist doch schon weiter in der Entwicklung und bietet mehr Funktionalität (wie man sie als Plugin- und Java-Entwickler von <span
class="caps">JDT</span> und <span
class="caps">PDE</span> gewohnt ist).</p><p>Anbei der PDF-Foliensatz des Kurses und der Eclipse-Workspace mit den Übungen. Versprochen ist versprochen :-)</p><p>PS: Ich gehe aus einem solchen Kurs jedes Mal mit so viel  Ideen und könnte meine ganze Skriptsammlung überarbeiten &#8230; :-)</p><table
id="attachments" class="sticky-enabled"><thead><tr><th>Anhang</th><th>Größe</th></tr></thead><tbody><tr
class="odd"><td><a
href="/wp-content/uploads/perlkurs_advanced-20080919.pdf">perlkurs_advanced-20080919.pdf</a></td><td>374.03 KB</td></tr><tr
class="even"><td><a
href="/wp-content/uploads/workspace-20080919.zip">workspace-20080919.zip</a></td><td>171.67 KB</td></tr></tbody></table><div
class="betterrelated"><p><strong>Ähnliche Beiträge:</strong></p><ol><li> <a
href="http://niebegeg.net/2008/11/16/ein-paar-perl-tage-in-sicht-einsteigerkurs-am-zgdv/" title="Permanent link to Ein paar Perl-Tage in Sicht: Einsteigerkurs am ZGDV">Ein paar Perl-Tage in Sicht: Einsteigerkurs am ZGDV</a></li><li> <a
href="http://niebegeg.net/2008/12/01/wieder-ein-vhs-kurs/" title="Permanent link to Wieder ein VHS-Kurs!">Wieder ein VHS-Kurs!</a></li><li> <a
href="http://niebegeg.net/2009/03/16/zum-dritten-mal-wieder-ein-vhs-kurs/" title="Permanent link to Zum dritten Mal: Wieder ein VHS-Kurs!">Zum dritten Mal: Wieder ein VHS-Kurs!</a></li><li> <a
href="http://niebegeg.net/2010/03/15/die-gruppenseite-der-rostocker-drupaler-zieht-um/" title="Permanent link to Die Gruppenseite der Rostocker Drupaler zieht um">Die Gruppenseite der Rostocker Drupaler zieht um</a></li><li> <a
href="http://niebegeg.net/2008/09/30/mein-universeller-eclipse-starter/" title="Permanent link to Mein universeller Eclipse-Starter">Mein universeller Eclipse-Starter</a></li></ol></div><p><a
href="https://dirkr.fornax.uberspace.de/?flattrss_redirect&amp;id=86&amp;md5=097a8cb9bd6ce54eb6cb79ecebcd3aa0" title="Flattr" target="_blank"><img
src="http://niebegeg.net/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded> <wfw:commentRss>http://niebegeg.net/2008/09/24/wieder-mal-geperlt-aufbaukurs-am-zgdv/feed/</wfw:commentRss> <slash:comments>0</slash:comments> <atom:link rel="payment" href="https://dirkr.fornax.uberspace.de/?flattrss_redirect&amp;id=86&amp;md5=097a8cb9bd6ce54eb6cb79ecebcd3aa0" type="text/html" /> </item> <item><title>Proguard und Windows &#8211; und ganz eigene Fehlermeldungen</title><link>http://niebegeg.net/2008/08/07/proguard-und-windows-und-ganz-eigene-fehlermeldungen/</link> <comments>http://niebegeg.net/2008/08/07/proguard-und-windows-und-ganz-eigene-fehlermeldungen/#comments</comments> <pubDate>Wed, 30 Nov -0001 00:00:00 +0000</pubDate> <dc:creator>Dirk Rüdiger</dc:creator> <category><![CDATA[Und sonst so]]></category> <category><![CDATA[Eclipse]]></category> <category><![CDATA[Java]]></category> <category><![CDATA[obfuscate4e]]></category> <category><![CDATA[ProGuard]]></category> <category><![CDATA[Windows]]></category> <guid
isPermaLink="false"></guid> <description><![CDATA[Nun bin ich dabei, eine Eclipse RCP-Applikation zu exportieren. Und dabei wird sie mit obfuscate4e und dem eingebauten Proguard-Obfuskator verarbeitet. Ich sitze an einem Windows-PC und bekomme Fehlermeldungen, die ich zuvor (beim Produktexport unter Linux) nicht kannte: ClassNotFoundExceptions in obfuskierten Packages. Nach der Recherche im Mappingfile proguard.map und im obfuskierten Plugin-Jar zeigte, dass Proguard in [...]]]></description> <content:encoded><![CDATA[<p>Nun bin ich dabei, eine <em>Eclipse RCP</em>-Applikation zu exportieren. Und dabei wird sie mit <a
href="http://obfuscate4e.partmaster.de"><em>obfuscate4e</em></a> und dem eingebauten Proguard-Obfuskator verarbeitet. Ich sitze an einem Windows-PC und bekomme Fehlermeldungen, die ich zuvor (beim Produktexport unter Linux) nicht kannte: ClassNotFoundExceptions in obfuskierten Packages. Nach der Recherche im Mappingfile proguard.map und im obfuskierten Plugin-Jar zeigte, dass Proguard in der Voreinstellung die ersten 26 Klassen eines Packages in &quot;a.class&quot; bis &quot;z.class&quot; umbenennt und dann mit Gro&szlig;buchstaben weitermacht: &quot;A.class&quot; bis &quot;Z.class&quot;. Beim Produktexport werden die generieten Jars noch mal ausgepackt &#8211; und schon sind die Kleinbuchstaben-Klassen unter Windows weg.</p><p>Abhilfe schaffte das Einsetzen des Schalters <em>-dontusemixedcaseclassnames</em> in der Proguard-Konfiguration, und schon macht Proguard bei der 27. Klasse eines Packages mit &quot;aa.class&quot; weiter. Das sollte m.E. Voreinstellung sein!</p><p>Einen interessanten Workaround fand ich bei <a
href="http://osdir.com/ml/java.sun.kvm/2003-09/msg00083.html" title="http://osdir.com/ml/java.sun.kvm/2003-09/msg00083.html">http://osdir.com/ml/java.sun.kvm/2003-09/msg00083.html</a> :</p><blockquote><p>If you have more than 26 files,create another package and place the rest 26 files and so on.</p></blockquote><p>Klasse!</p><div
class="betterrelated"><p><strong>Ähnliche Beiträge:</strong></p><ol><li> <a
href="http://niebegeg.net/2008/04/30/obfuscate4e-0-6-bringt-verbesserte-proguard-integration/" title="Permanent link to obfuscate4e 0.6 bringt verbesserte Proguard-Integration">obfuscate4e 0.6 bringt verbesserte Proguard-Integration</a></li><li> <a
href="http://niebegeg.net/2008/04/21/wenn-man-nicht-herr-ueber-die-plugin-instanzen-ist/" title="Permanent link to Wenn man nicht Herr über die Plugin-Instanzen ist &#8230;">Wenn man nicht Herr über die Plugin-Instanzen ist &#8230;</a></li><li> <a
href="http://niebegeg.net/2007/12/14/our-first-open-source-project-obfuscate4e/" title="Permanent link to Our first Open Source project: Obfuscate4e">Our first Open Source project: Obfuscate4e</a></li><li> <a
href="http://niebegeg.net/2008/03/19/launch4j-ein-leichtgewichtiger-java-starter-fuer-windows/" title="Permanent link to Launch4j &#8211; ein leichtgewichtiger Java-Starter für Windows">Launch4j &#8211; ein leichtgewichtiger Java-Starter für Windows</a></li><li> <a
href="http://niebegeg.net/2008/06/25/ich-bin-ein-freund-von-eclipse/" title="Permanent link to Ich bin ein Freund von Eclipse :-)">Ich bin ein Freund von Eclipse :-)</a></li></ol></div><p><a
href="https://dirkr.fornax.uberspace.de/?flattrss_redirect&amp;id=78&amp;md5=d961e80c0dd580b6f7458833b528f4f5" title="Flattr" target="_blank"><img
src="http://niebegeg.net/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded> <wfw:commentRss>http://niebegeg.net/2008/08/07/proguard-und-windows-und-ganz-eigene-fehlermeldungen/feed/</wfw:commentRss> <slash:comments>0</slash:comments> <atom:link rel="payment" href="https://dirkr.fornax.uberspace.de/?flattrss_redirect&amp;id=78&amp;md5=d961e80c0dd580b6f7458833b528f4f5" type="text/html" /> </item> <item><title>obfuscate4e 0.6 bringt verbesserte Proguard-Integration</title><link>http://niebegeg.net/2008/04/30/obfuscate4e-0-6-bringt-verbesserte-proguard-integration/</link> <comments>http://niebegeg.net/2008/04/30/obfuscate4e-0-6-bringt-verbesserte-proguard-integration/#comments</comments> <pubDate>Wed, 30 Apr 2008 19:38:12 +0000</pubDate> <dc:creator>Dirk Rüdiger</dc:creator> <category><![CDATA[Und sonst so]]></category> <category><![CDATA[Eclipse]]></category> <category><![CDATA[Java]]></category> <category><![CDATA[obfuscate4e]]></category> <category><![CDATA[Open Source]]></category> <category><![CDATA[PartMaster]]></category> <category><![CDATA[ProGuard]]></category> <guid
isPermaLink="false"></guid> <description><![CDATA[Gerade haben wir die neue Version 0.6 unseres Open Source-Projekts obfuscate4e ver&#246;ffentlicht. Diese Version bietet eine verbesserte Integration des Proguard-Obfuscators (ich habe ja schon mal beschrieben, was ein Obfsucator ist ;). Proguard wurde auch aktualisiert, womit nun alle Features des Obfuscators auch in Eclipse&#8217;s Build-Prozess verf&#252;gbar sind. Die Details zur neuen Version und zur Anwendung [...]]]></description> <content:encoded><![CDATA[<p>Gerade haben wir die neue Version 0.6 unseres Open Source-Projekts <em>obfuscate4e</em> ver&ouml;ffentlicht. Diese Version bietet eine verbesserte Integration des Proguard-Obfuscators (ich habe ja <a
href="/blog/our-first-open-source-project-obfuscate4e">schon mal beschrieben</a>, was ein Obfsucator ist ;). Proguard wurde auch aktualisiert, womit nun alle Features des Obfuscators auch in Eclipse&#8217;s Build-Prozess verf&uuml;gbar sind.</p><p>Die Details zur neuen Version und zur Anwendung des Plugins sind auf der Homepage des Projekts zu finden: <a
href="http://obfuscate4e.partmaster.de/" title="http://obfuscate4e.partmaster.de/">http://obfuscate4e.partmaster.de/</a> ...</p><div
class="betterrelated"><p><strong>Ähnliche Beiträge:</strong></p><ol><li> <a
href="http://niebegeg.net/2007/12/14/our-first-open-source-project-obfuscate4e/" title="Permanent link to Our first Open Source project: Obfuscate4e">Our first Open Source project: Obfuscate4e</a></li><li> <a
href="http://niebegeg.net/2009/05/05/obfuscate4e-0-7-vereinfacht-die-obfuskierungskonfiguration/" title="Permanent link to obfuscate4e 0.7 vereinfacht die Obfuskierungskonfiguration">obfuscate4e 0.7 vereinfacht die Obfuskierungskonfiguration</a></li><li> <a
href="http://niebegeg.net/2008/08/07/proguard-und-windows-und-ganz-eigene-fehlermeldungen/" title="Permanent link to Proguard und Windows &#8211; und ganz eigene Fehlermeldungen">Proguard und Windows &#8211; und ganz eigene Fehlermeldungen</a></li><li> <a
href="http://niebegeg.net/2008/04/21/wenn-man-nicht-herr-ueber-die-plugin-instanzen-ist/" title="Permanent link to Wenn man nicht Herr über die Plugin-Instanzen ist &#8230;">Wenn man nicht Herr über die Plugin-Instanzen ist &#8230;</a></li><li> <a
href="http://niebegeg.net/2007/12/19/obfuscate4e-at-the-eclipse-democamp-in-hamburg/" title="Permanent link to obfuscate4e at the Eclipse DemoCamp in Hamburg">obfuscate4e at the Eclipse DemoCamp in Hamburg</a></li></ol></div><p><a
href="https://dirkr.fornax.uberspace.de/?flattrss_redirect&amp;id=58&amp;md5=78acbceadd5a7e346014f695337f1c31" title="Flattr" target="_blank"><img
src="http://niebegeg.net/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded> <wfw:commentRss>http://niebegeg.net/2008/04/30/obfuscate4e-0-6-bringt-verbesserte-proguard-integration/feed/</wfw:commentRss> <slash:comments>0</slash:comments> <atom:link rel="payment" href="https://dirkr.fornax.uberspace.de/?flattrss_redirect&amp;id=58&amp;md5=78acbceadd5a7e346014f695337f1c31" type="text/html" /> </item> <item><title>Wenn man nicht Herr über die Plugin-Instanzen ist &#8230;</title><link>http://niebegeg.net/2008/04/21/wenn-man-nicht-herr-ueber-die-plugin-instanzen-ist/</link> <comments>http://niebegeg.net/2008/04/21/wenn-man-nicht-herr-ueber-die-plugin-instanzen-ist/#comments</comments> <pubDate>Mon, 21 Apr 2008 21:33:01 +0000</pubDate> <dc:creator>Dirk Rüdiger</dc:creator> <category><![CDATA[Und sonst so]]></category> <category><![CDATA[Ant]]></category> <category><![CDATA[Das nervt]]></category> <category><![CDATA[Eclipse]]></category> <category><![CDATA[Java]]></category> <category><![CDATA[obfuscate4e]]></category> <category><![CDATA[Plugins]]></category> <category><![CDATA[ProGuard]]></category> <guid
isPermaLink="false"></guid> <description><![CDATA[F&#252;r unser Eclipse-Projekt Obfuscate4e arbeitete ich seit geraumer Zeit an Aktualisierungen. Vor allem sollte der eingebaute Java-Obfuscator Proguard aktualisiert werden. Und beim Testen mit den verschiedenen Eclipse-Versionen (3.2.x und 3.3.x) sowie Java-Ausgaben (1.4 und 1.5) bekam ich h&#228;ufig und scheinbar unvorhersehbar die Meldung, dass Ant den proguard-Task nicht aktivieren kann, weil das proguard.jar nicht im [...]]]></description> <content:encoded><![CDATA[<p>F&uuml;r unser Eclipse-Projekt <em>Obfuscate4e</em> arbeitete ich seit geraumer Zeit an Aktualisierungen. Vor allem sollte der eingebaute Java-Obfuscator <em>Proguard</em> aktualisiert werden. Und beim Testen mit den verschiedenen <em>Eclipse</em>-Versionen (3.2.x und 3.3.x) sowie Java-Ausgaben (1.4 und 1.5) bekam ich h&auml;ufig und scheinbar unvorhersehbar die Meldung, dass Ant den <em>proguard</em>-Task nicht aktivieren kann, weil das <em>proguard.jar</em> nicht im Ant-Classpath zu finden sei. Und Ant erg&auml;nzte noch, dass dies kein Bug, sondern ein Konfigurationsfehler ist. Danke!</p><p>Das war ziemlich nervig, weil der Grund daf&uuml;r nicht lokaloisierbar war und der Fehler sogar auftrat, wenn ich die letzte Release auscheckte und diese nachweislich funktionierende Version nicht funktionierte. Bis ich nun den Fehler gefunden habe:<br
/> Beim Testen der Distribution vor der letzten Release habe ich das feature auch mal &uuml;ber unsere Update site installiert. Und zwar in die Extension location, in der ich eigentlich nur das Subversive Feature verwalte. Und wann immer ich ein Eclipse neu aufsetzte und die Subversive-Extension location integrierte, kannte Eclipse auch das (mittlerweile veraltete) proguard-Plugin. Nachdem ich es entfernt und Eclipse einmal neu gestartet hatte, funktionierte alles wieder bestens. Es war also wirklich ein Konfigurationsfehler &#8211; 1:0 f&uuml;r Ant.</p><p>Gefunden habe ich den Fehler &uuml;brigens, als ich in der Eclipse <span
class="caps">IDE</span> (mit ge&ouml;ffnetem obfuscate4e-Workspace) in den <em>Preferences &gt; Ant &gt; Runtime</em> im Classpath das proguard.jar und in der Tasks-Liste den <em>proguard</em>-Task gelistst sah, den Eclipse zu diesem Zeitpunkt gar nicht kennen durfte. Zum Gl&uuml;ck habe ich vergessen zu z&auml;hlen, wie viele Stunden mich dieser Fehler gekostet hat.</p><div
class="betterrelated"><p><strong>Ähnliche Beiträge:</strong></p><ol><li> <a
href="http://niebegeg.net/2008/04/30/obfuscate4e-0-6-bringt-verbesserte-proguard-integration/" title="Permanent link to obfuscate4e 0.6 bringt verbesserte Proguard-Integration">obfuscate4e 0.6 bringt verbesserte Proguard-Integration</a></li><li> <a
href="http://niebegeg.net/2007/12/14/our-first-open-source-project-obfuscate4e/" title="Permanent link to Our first Open Source project: Obfuscate4e">Our first Open Source project: Obfuscate4e</a></li><li> <a
href="http://niebegeg.net/2008/08/07/proguard-und-windows-und-ganz-eigene-fehlermeldungen/" title="Permanent link to Proguard und Windows &#8211; und ganz eigene Fehlermeldungen">Proguard und Windows &#8211; und ganz eigene Fehlermeldungen</a></li><li> <a
href="http://niebegeg.net/2009/05/05/obfuscate4e-0-7-vereinfacht-die-obfuskierungskonfiguration/" title="Permanent link to obfuscate4e 0.7 vereinfacht die Obfuskierungskonfiguration">obfuscate4e 0.7 vereinfacht die Obfuskierungskonfiguration</a></li><li> <a
href="http://niebegeg.net/2008/09/30/mein-universeller-eclipse-starter/" title="Permanent link to Mein universeller Eclipse-Starter">Mein universeller Eclipse-Starter</a></li></ol></div><p><a
href="https://dirkr.fornax.uberspace.de/?flattrss_redirect&amp;id=56&amp;md5=d75ca1285de620b9f0d330f451b6ac51" title="Flattr" target="_blank"><img
src="http://niebegeg.net/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded> <wfw:commentRss>http://niebegeg.net/2008/04/21/wenn-man-nicht-herr-ueber-die-plugin-instanzen-ist/feed/</wfw:commentRss> <slash:comments>0</slash:comments> <atom:link rel="payment" href="https://dirkr.fornax.uberspace.de/?flattrss_redirect&amp;id=56&amp;md5=d75ca1285de620b9f0d330f451b6ac51" type="text/html" /> </item> <item><title>Launch4j &#8211; ein leichtgewichtiger Java-Starter für Windows</title><link>http://niebegeg.net/2008/03/19/launch4j-ein-leichtgewichtiger-java-starter-fuer-windows/</link> <comments>http://niebegeg.net/2008/03/19/launch4j-ein-leichtgewichtiger-java-starter-fuer-windows/#comments</comments> <pubDate>Wed, 30 Nov -0001 00:00:00 +0000</pubDate> <dc:creator>Dirk Rüdiger</dc:creator> <category><![CDATA[Ant]]></category> <category><![CDATA[Java]]></category> <category><![CDATA[Open Source]]></category> <category><![CDATA[Software]]></category> <category><![CDATA[Sourceforge]]></category> <category><![CDATA[Windows]]></category> <guid
isPermaLink="false"></guid> <description><![CDATA[Gerade habe ich ein wenig mit Launch4j (http://launch4j.sourceforge.net/) experimentiert. Es ist ein (sehr leichtgewichtiger) Wrapper f&#252;r Jar-Aufrufe, d.h. es verpackt ein Jar in einer ausf&#252;hrbaren Windows-Datei (exe), wobei man einige sinnvolle Einstellungen vornehmen kann, z.B.: Programm-Icon und Splash, Programmname, der auch im Taskmanager auftaucht (statt &#34;java&#34;), Verweis auf eine JRE, die automatisch zur Ausf&#252;hrung genommen [...]]]></description> <content:encoded><![CDATA[<div
class="field field-type-filefield field-field-image"><div
class="field-items"><div
class="field-item odd"> <a
href="/wp-content/uploads/screenshot-launch4j.jpg" title="Screenshot Launch4J" class="thickbox" rel="gallery-46"><img
src="/wp-content/uploads/screenshot-launch4j.jpg" alt="" title="Screenshot Launch4J"  class="imagecache imagecache-preview" width="250" height="183" /></a></div></div></div><p>Gerade habe ich ein wenig mit <em>Launch4j</em> (<a
href="http://launch4j.sourceforge.net/" title="http://launch4j.sourceforge.net/">http://launch4j.sourceforge.net/</a>) experimentiert. Es ist ein (sehr leichtgewichtiger) Wrapper f&uuml;r Jar-Aufrufe, d.h. es verpackt ein Jar in einer ausf&uuml;hrbaren Windows-Datei (exe), wobei man einige sinnvolle Einstellungen vornehmen kann, z.B.:</p><ul><li>Programm-Icon und Splash,</li><li>Programmname, der auch im Taskmanager auftaucht (statt &quot;java&quot;),</li><li>Verweis auf eine <span
class="caps">JRE</span>, die automatisch zur Ausf&uuml;hrung genommen wird,</li><li>Main-Class, Classpath-Eintr&auml;ge und Kommandozeilenargumente des Jars,</li><li>Registry-Eintr&auml;ge,</li><li>...</li></ul><p>Alle notwendigen Ressourcen werden in eine Exe gepackt, man muss dann nur noch eine <span
class="caps">JRE</span> hinzupacken und alles zippen &#8211; fertig ist die Dist. Und der Overhead ist gering (in dem Zip-Archiv ist noch die 1.4er <span
class="caps">JRE</span> enthalten):</p><pre># l myapp*&#60;br /&#62;-rw-r--r-- 1 drue users 13983944 2008-03-18 16:42 myapp-1.0.zip&#60;br /&#62;-rwxr-xr-x 1 drue users&#38;nbsp; 1892105 2008-03-18 16:41 myapp.exe*&#60;br /&#62;-rw-r--r-- 1 drue users&#38;nbsp; 1858825 2008-03-18 16:41 myapp.jar</pre><p>Hier ein Beispiel f&uuml;r die Konfiguration, alles <span
class="caps">XML</span> (ich habe die <em>Launch4J</em>-Dateien im Untervereichnis lib/launch4j abgelegt):</p><pre>&#38;lt;launch4jConfig&#38;gt;&#60;br /&#62;&#38;nbsp; &#38;lt;dontWrapJar&#38;gt;false&#38;lt;/dontWrapJar&#38;gt;&#60;br /&#62;&#38;nbsp; &#38;lt;headerType&#38;gt;gui&#38;lt;/headerType&#38;gt;&#60;br /&#62;&#38;nbsp; &#38;lt;jar&#38;gt;myapp.jar&#38;lt;/jar&#38;gt;&#60;br /&#62;&#38;nbsp; &#38;lt;outfile&#38;gt;myapp.exe&#38;lt;/outfile&#38;gt;&#60;br /&#62;&#38;nbsp; &#38;lt;errTitle&#38;gt;My launch4J app&#38;lt;/errTitle&#38;gt;&#60;br /&#62;&#38;nbsp; &#38;lt;cmdLine&#38;gt;&#38;lt;/cmdLine&#38;gt;&#60;br /&#62;&#38;nbsp; &#38;lt;chdir&#38;gt;.&#38;lt;/chdir&#38;gt;&#60;br /&#62;&#38;nbsp; &#38;lt;priority&#38;gt;normal&#38;lt;/priority&#38;gt;&#60;br /&#62;&#38;nbsp; &#38;lt;downloadUrl&#38;gt;http://java.com/download&#38;lt;/downloadUrl&#38;gt;&#60;br /&#62;&#38;nbsp; &#38;lt;supportUrl&#38;gt;&#38;lt;/supportUrl&#38;gt;&#60;br /&#62;&#38;nbsp; &#38;lt;customProcName&#38;gt;true&#38;lt;/customProcName&#38;gt;&#60;br /&#62;&#38;nbsp; &#38;lt;stayAlive&#38;gt;false&#38;lt;/stayAlive&#38;gt;&#60;br /&#62;&#38;nbsp; &#38;lt;manifest&#38;gt;lib/launch4j/manifest/xp-themes.exe.manifest&#38;lt;/manifest&#38;gt;&#60;br /&#62;&#38;nbsp; &#38;lt;icon&#38;gt;resources/myapp.ico&#38;lt;/icon&#38;gt;&#60;br /&#62;&#38;nbsp; &#38;lt;jre&#38;gt;&#60;br /&#62;&#38;nbsp;&#38;nbsp;&#38;nbsp; &#38;lt;path&#38;gt;jre&#38;lt;/path&#38;gt;&#60;br /&#62;&#38;nbsp;&#38;nbsp;&#38;nbsp; &#38;lt;minVersion&#38;gt;1.4.0&#38;lt;/minVersion&#38;gt;&#60;br /&#62;&#38;nbsp;&#38;nbsp;&#38;nbsp; &#38;lt;maxVersion&#38;gt;&#38;lt;/maxVersion&#38;gt;&#60;br /&#62;&#38;nbsp;&#38;nbsp;&#38;nbsp; &#38;lt;jdkPreference&#38;gt;preferJre&#38;lt;/jdkPreference&#38;gt;&#60;br /&#62;&#38;nbsp; &#38;lt;/jre&#38;gt;&#60;br /&#62;&#38;nbsp; &#38;lt;splash&#38;gt;&#60;br /&#62;&#38;nbsp;&#38;nbsp;&#38;nbsp; &#38;lt;file&#38;gt;resources/splash.bmp&#38;lt;/file&#38;gt;&#60;br /&#62;&#38;nbsp;&#38;nbsp;&#38;nbsp; &#38;lt;waitForWindow&#38;gt;true&#38;lt;/waitForWindow&#38;gt;&#60;br /&#62;&#38;nbsp;&#38;nbsp;&#38;nbsp; &#38;lt;timeout&#38;gt;60&#38;lt;/timeout&#38;gt;&#60;br /&#62;&#38;nbsp;&#38;nbsp;&#38;nbsp; &#38;lt;timeoutErr&#38;gt;true&#38;lt;/timeoutErr&#38;gt;&#60;br /&#62;&#38;nbsp; &#38;lt;/splash&#38;gt;&#60;br /&#62;&#38;lt;/launch4jConfig&#38;gt;</pre><p>F&uuml;r die Konfiguration wird auch eine <span
class="caps">GUI</span> mitgeliefert. Der Screenshot ist unten angeh&auml;ngt. Die <span
class="caps">JRE</span> wird im Unterverzeichnis <span
class="caps">JRE</span> erwartet.</p><p>Die Integration von <em>Launch4J</em> in ein Java-Projekt mit Ant und <em>build.xml</em> ist auch ganz einfach. <em>Launch4J</em> bringt einen Ant-Task mit, der im Build-Skript angemeldet werden muss:</p><pre>&#38;lt;target name=&#38;quot;exe&#38;quot; depends=&#38;quot;jar&#38;quot; description=&#38;quot;Create a selfcontaining executable&#38;quot;&#38;gt;&#60;br /&#62;&#38;nbsp;&#38;nbsp; &#38;lt;taskdef name=&#38;quot;launch4j&#38;quot; classname=&#38;quot;net.sf.launch4j.ant.Launch4jTask&#38;quot;&#60;br /&#62;&#38;nbsp;&#38;nbsp;&#38;nbsp;&#38;nbsp;&#38;nbsp;&#38;nbsp; classpath=&#38;quot;${launch4j.dir}/launch4j.jar:${launch4j.dir}/lib/xstream.jar&#38;quot; /&#38;gt;&#60;br /&#62;&#38;nbsp;&#38;nbsp; &#38;lt;launch4j configFile=&#38;quot;${basedir}/myapp.xml&#38;quot; /&#38;gt;&#60;br /&#62;&#38;lt;/target&#38;gt;</pre><p>Nun gibt es ja noch das <a
href="https://sourceforge.net/projects/eclipsensis/" class="ext" target="_blank">EclipseNSIS-Projekt</a> zum Erstellen eines Installers f&uuml;r Eclipse-Anwendungen. Der <em>Launch4J</em>-Ansatz kann gew&auml;hlt werden, wenn f&uuml;r das Projekt kein Installer ben&ouml;tigt wird und der Aufwand f&uuml;r Entwicklung und Testen der Installation so minimal bleibt. Mit Launch4J liefert man ein Zip-Archiv. Und das war in einer Stunde erstellt.</p><div
class="betterrelated"><p><strong>Ähnliche Beiträge:</strong></p><ol><li> <a
href="http://niebegeg.net/2009/07/11/ein-kurzer-blick-auf-die-trac-xmlrpc-api/" title="Permanent link to Ein kurzer Blick auf die Trac-XMLRPC API">Ein kurzer Blick auf die Trac-XMLRPC API</a></li><li> <a
href="http://niebegeg.net/2007/08/13/my-new-sudoku-block/" title="Permanent link to My new Sudoku block">My new Sudoku block</a></li><li> <a
href="http://niebegeg.net/2008/01/15/happy-birthday-drupal/" title="Permanent link to Happy birthday, Drupal!">Happy birthday, Drupal!</a></li><li> <a
href="http://niebegeg.net/2008/04/02/warum-ich-mich-fuer-einen-palm-centro-entschieden-habe-und-es-wieder-tun-wuerde/" title="Permanent link to Warum ich mich für einen Palm Centro entschieden habe &#8230; und es wieder tun würde!">Warum ich mich für einen Palm Centro entschieden habe &#8230; und es wieder tun würde!</a></li><li> <a
href="http://niebegeg.net/2008/05/22/bitte-installieren-sie-den-trojaner-selbst/" title="Permanent link to Bitte installieren Sie den Trojaner selbst!">Bitte installieren Sie den Trojaner selbst!</a></li></ol></div><p><a
href="https://dirkr.fornax.uberspace.de/?flattrss_redirect&amp;id=46&amp;md5=f0c37d26d3a2da2eddc97559260ef8ed" title="Flattr" target="_blank"><img
src="http://niebegeg.net/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded> <wfw:commentRss>http://niebegeg.net/2008/03/19/launch4j-ein-leichtgewichtiger-java-starter-fuer-windows/feed/</wfw:commentRss> <slash:comments>0</slash:comments> <atom:link rel="payment" href="https://dirkr.fornax.uberspace.de/?flattrss_redirect&amp;id=46&amp;md5=f0c37d26d3a2da2eddc97559260ef8ed" type="text/html" /> </item> <item><title>Our first Open Source project: Obfuscate4e</title><link>http://niebegeg.net/2007/12/14/our-first-open-source-project-obfuscate4e/</link> <comments>http://niebegeg.net/2007/12/14/our-first-open-source-project-obfuscate4e/#comments</comments> <pubDate>Wed, 30 Nov -0001 00:00:00 +0000</pubDate> <dc:creator>Dirk Rüdiger</dc:creator> <category><![CDATA[Eclipse]]></category> <category><![CDATA[Java]]></category> <category><![CDATA[obfuscate4e]]></category> <category><![CDATA[PartMaster]]></category> <category><![CDATA[ProGuard]]></category> <guid
isPermaLink="false"></guid> <description><![CDATA[Now it&#8217;s done: We at PartMaster just published the first release of our Obfuscation feature for the Eclipse IDE: obfuscate4e, located at obfuscate4e.partmaster.de You might ask: What&#8217;s an obfuscator? In Java a obfuscator is used to prevent program code from reverse engineering. It removes unneccesary debugger information, shrinks variable and method names (means: makes them [...]]]></description> <content:encoded><![CDATA[<p>Now it&#8217;s done: We at <a
href="http://www.partmaster.de">PartMaster</a> just published the first release of our Obfuscation feature for the Eclipse IDE: obfuscate4e, located at <a
href="http://obfuscate4e.partmaster.de/">obfuscate4e.partmaster.de</a></p><p>You might ask: What&#8217;s an obfuscator? In Java a obfuscator is used to prevent program code from reverse engineering. It removes unneccesary debugger information, shrinks variable and method names (means: makes them senseless). Modern obfuscators additionally remove code that would be obfuscated but is never called from somwhere.</p><p>The project obfuscate4e adds the obfuscation facilities into the build process of Eclipse plugins. During the export of plugins or a product the code will be obfuscated automaticly and the product can be delivered to the customers without further post processing.</p><p>This release has built-in support for <a
href="http://proguard.sourceforge.net/">ProGuard</a>,  an Open Source Java obfuscator. In the future additional obfuscators will be integrated and the customization possibilities will be improved.</p><div
class="betterrelated"><p><strong>Ähnliche Beiträge:</strong></p><ol><li> <a
href="http://niebegeg.net/2008/04/30/obfuscate4e-0-6-bringt-verbesserte-proguard-integration/" title="Permanent link to obfuscate4e 0.6 bringt verbesserte Proguard-Integration">obfuscate4e 0.6 bringt verbesserte Proguard-Integration</a></li><li> <a
href="http://niebegeg.net/2009/05/05/obfuscate4e-0-7-vereinfacht-die-obfuskierungskonfiguration/" title="Permanent link to obfuscate4e 0.7 vereinfacht die Obfuskierungskonfiguration">obfuscate4e 0.7 vereinfacht die Obfuskierungskonfiguration</a></li><li> <a
href="http://niebegeg.net/2007/12/19/obfuscate4e-at-the-eclipse-democamp-in-hamburg/" title="Permanent link to obfuscate4e at the Eclipse DemoCamp in Hamburg">obfuscate4e at the Eclipse DemoCamp in Hamburg</a></li><li> <a
href="http://niebegeg.net/2008/04/21/wenn-man-nicht-herr-ueber-die-plugin-instanzen-ist/" title="Permanent link to Wenn man nicht Herr über die Plugin-Instanzen ist &#8230;">Wenn man nicht Herr über die Plugin-Instanzen ist &#8230;</a></li><li> <a
href="http://niebegeg.net/2008/08/07/proguard-und-windows-und-ganz-eigene-fehlermeldungen/" title="Permanent link to Proguard und Windows &#8211; und ganz eigene Fehlermeldungen">Proguard und Windows &#8211; und ganz eigene Fehlermeldungen</a></li></ol></div><p><a
href="https://dirkr.fornax.uberspace.de/?flattrss_redirect&amp;id=16&amp;md5=5d3514503441bae577773a4625051cc0" title="Flattr" target="_blank"><img
src="http://niebegeg.net/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded> <wfw:commentRss>http://niebegeg.net/2007/12/14/our-first-open-source-project-obfuscate4e/feed/</wfw:commentRss> <slash:comments>0</slash:comments> <atom:link rel="payment" href="https://dirkr.fornax.uberspace.de/?flattrss_redirect&amp;id=16&amp;md5=5d3514503441bae577773a4625051cc0" type="text/html" /> </item> </channel> </rss>
