DLL's in Java

Hallo,
In Java kann man doch auch Dll schreiben, nur wie? Ich bin Java Anfänger, kann aber schon ein bischen programmieren.
Ich hoffe ihr habt meine Frage verstanden.
Viele Grüße, max

Es gab schonmal ein ähnliches Thema, aber es wurden keine Informationen darüber geschrieben, WIE ich das mache, sondern nur, dass das nicht die allerbeste Lösung ist.

hallo

eine dll (dynamic link library) ist eine windows-spezifische programmbibliothek. java ist eine plattformunabhängige sprache. von haus aus kann java daher keine dlls erstellen. es gibt zwar compiler, die aus java-code echte exe-dateien und dlls erstellen können (also nicht einfach nur wrapper), die haben aber viele probleme und daher mehr nachteile als vorteile.

im java erstellt man jar-dateien - im prinzip eine zip-datei mit den java-klassen und einer manifest-datei, in der zusätzliche metadaten gespeichert werden können. die jar-dateien verhalten sich ähnlich wie dlls, nur dass sie eben java-spezifisch sind und nicht von jedem beliebigen programm sondern nur von java-anwendungen genutzt werden können.

hilft das schon mal?

lg
erwin

Dem zweiten Teil wusste ich auch schon, aber das mit der Wrapper wusste ich nicht! Danke!

Eventuell hilft dir JSmooth hier weiter. Dadurch kannst du eine „Windows-Version“ deines Javaprogrammes erstellen.

Zu JSmooth: Man sollte Java nicht mit Wrappern oder Java-To-Native-Compilern kompilieren / wrappen. Dann geht der Ansatz der plattformunabhänigkeit vollkommen verloren!

Zu „DLL erstellen“: Eine JAR-Datei kann von einem anderen Java-Programm wie eine DLL von einem Windows-Programm genutzt werden. Nur das man JAR’s (mit Main-Klasse) auch starten kann (wie EXE unter Windows). Wenn man von einem C/C+±Programm auf Java-Programme zugreifen will, nutzt man JNI. Kurz:
Willst du eine Bibliothek für andere Java-Programme schreiben oder ein JAR in deinem Programm benutzen -> JAR! Für Java brauchst du DLL nicht!

Grüße, JasonDelife.