# Jogl2 (Netbeans8) selbstlaufende Applikation erstellen



## DerTherion (6. Jan 2010)

Hallo,

ich hab eine Frage/Problem mit Jogl2 und suche nach Hilfe.

Eigentlich is die Sache sehr simpel, meine Programme (oder auch die Demos für Jogl2)
laufen in Netbeans8 (bei alten das gleichen) absolut problemlos.
Nun möchte ich gerne das das Programm selbstständig lauffähig ist.

Bei *Jogl1* hatte ich dann mehrere ordner nachdem ich build verwendete 
z.b.: dist-windows-i568 , dist-macos-universal usw.  und diese jars im jeweiligen order funktionierten

Nun bei *Jogl2* sieht das alles anders aus: Nur ein Ordner names dist (nach build) und die projekt.jar darin ist nicht lauffähig. 
(die -Xmx und -Xms sind nicht das Problem..es geht um simple hello world sachen)
ich vermute das irgendwo irgendwas eingestellt werden muss damit irgendwo irgendwelche libs
mit der jar verbunden werden. leider bin ich nach langer google und bing suche nicht
zum ziel gekommen was zu tun ist und auch eine antwort von kenai kam nicht.

kann mir von euch einer den weg ein wenig erleuchten? 

viele grüße  Theri


----------



## Guest2 (6. Jan 2010)

Moin,

also ich habe von Netbeans überhaupt keine Ahnung und kann Dir deshalb auch nicht direkt weiterhelfen.

Aber, Deiner Beschreibung nach, würde ich vermuten das Du früher das Netbeans OpenGL Pack von Michael Bien (bienator) verwendet hast. Das gibt es über seinem Blog: Michael Bien's Weblog

Mein zweiter Tipp währe gewesen, Deine Frage hier zu posten: jogl - Java Bindings for OpenGL

Weil bineator da regelmäßig mitliest und postet, aber das hast Du ja gestern schon getan. 

Gruß,
Fancy


----------



## DerTherion (7. Jan 2010)

hallo fancy,

ich denk mal das da noch einige im "winter"urlaub sind 
aber vielen dank für deine antwort.

ich habe eine extrem unsaubere methode im netz gefunden...
(die evtl dem einen oder anderen hilfreich sein könnte)

innerhalb des dist ordner sind die lib in system kategorien sortiert..
ich nehm mir den inhalt aus z.b. der natives-windows-i586  oder mac (je nach system)
.. und kopiere einfach alle files darin in das verzeichnis der "main" jar .. 
im lib odner muss vorhanden sein : gluegen-rt.jar,jogl.jar,nativewindow.all.jar und newt.all.jar 
...und schon läufen die jogl2 sachen als standalone..
(systeme wie solaris funktionieren anscheinen noch gar nicht richtig)


dirty but works

ich wüsste nur gerne eine saubere methode

viele grüße  theri


----------



## Guest2 (8. Jan 2010)

DerTherion hat gesagt.:


> ich nehm mir den inhalt aus z.b. der natives-windows-i586  oder mac (je nach system)
> .. und kopiere einfach alle files darin in das verzeichnis der "main" jar ..
> im lib odner muss vorhanden sein : gluegen-rt.jar,jogl.jar,nativewindow.all.jar und newt.all.jar
> ...und schon läufen die jogl2 sachen als standalone..




Wobei mich interessieren würde, keine der von Dir angegebenen Jars enthält die nativen Libraries (also z.B. unter Windows: gluegen-rt.dll, jogl_gl2.dll, jogl2es12.dll, nativewindow_awt.dll, nativewindow_jvm.dll, newt.dll) und wenn Dein Programm ohne IDE läuft muss der die auch irgendwo her holen. Liegen die auch in dem Verzeichnis?

(oder anders, gibt es in dem Netbeans Pack eine Tool Klasse die das laden von nativen Libraries zu Laufzeit vereinfacht? (on the fly aus irgend einem Jar heraus?))



DerTherion hat gesagt.:


> (systeme wie solaris funktionieren anscheinen noch gar nicht richtig)



Grundsätzlich funktionieren die Solaris builds schon, nur ist beim Solaris Buildserver die Festplatte hin. Selber kompilieren sollte aber gehen.

Gruß,
Fancy


----------



## DerTherion (8. Jan 2010)

Ich bin kein absolut kein Experte in Java.. eher ein Blindflieger in Tiefflug
was Java Betrifft. Ich hab vor ein Spiel zu schreiben was möglichst auf allen Systemen
läuft, darum kam ich zu Java.. Zuerst hatte ich Eclipse..aber da brachte ich Jogl1 nicht
wirklich zum laufen und so kam ich zu Netbeans mit den Plugins die weitesgehend einem alles
abnehmen so das man sich zu 99% auf das Spielprogrammieren konzentrieren kann.
(Und Jogl2 mit OpenGl3 unterstützung klingt natürlich verlockend 

Die Jogl Plugins laden alles benötigten Datein in die Dist Ordner so das die erzeugten
Programme lauffähig sind
 (Bei Jogl2 im moment muss man halt rumkopieren, bei Jogl1 war alles fix und fertig am ende)
Einzig auf die Speichereinstellungen musste man achten, ich hab mir eine starter applikation
geschrieben die bei bedarf eine projekt.jar mit großen Speicherhunger als selbstlaufend startet
(Xmx1024m Xms1024m)



> Wobei mich interessieren würde, keine der von Dir angegebenen Jars enthält die nativen Libraries (also z.B. unter Windows: gluegen-rt.dll, jogl_gl2.dll, jogl2es12.dll, nativewindow_awt.dll, nativewindow_jvm.dll, newt.dll) und wenn Dein Programm ohne IDE läuft muss der die auch irgendwo her holen. Liegen die auch in dem Verzeichnis?



im Projektordner exestiert nach dem Build eine jogl-dist und ein dist ordner...
wichtig ist bei jogl2 nur der dist...darin ist die projekt.jar und der lib ordner..in diesem befinden sich die native ordner und darin wiederum (z.b. dem windows..) sind z.b.: nativewindow_jvm.dll ,nativewindow_awt.dll,usw und diese benötigt das projekt im hauptordner wo auch das projekt an sich sitzt(9 files).
 in dem lib ordner sind noch die 4 oben genannten files (gluegen-rt.jar,jogl.jar,nativewindow.all.jar und newt.all.jar ) die da auch bleiben müssen und so läuft das ganze.


Es gibt noch so viel zu lernen über java..aber irgendwo muss ich halt anfangen :rtfm:
und ich bin froh das es dieses deutschsprachige forum gibt..mein englisch ist ne katastrophe.

viele grüße theri


Da fällt mir der alte Spruch ein:
Theorie ist: Man weiß wie es geht, aber es läuft nicht.
Praxis ist: Es läuft...und keiner weiß warum...


----------

