Aus Java-Quellcode eine executable Datei erstellen (IntelliJ)?

3 Antworten

Mit Java erstellt man normalerweise* keine ausführbaren double-click-exe-Dateien. Das, was bei Java rausspringt, sind entweder .class-Dateien (kompilierte* Klassen) oder .JAR-Dateien (Archive mit mehreren kompilierten Klassen + Bonus).

In IntelliJ gibt es sicher einen Weg, um aus deinem Code eine JAR-Datei zu erstellen (alternativ über ein Werkzeug wie Maven). Verknüpfst du dann in deinem Betriebssystem JAR-Dateien mit der entsprechenden Java-Laufzeitumgebung (JRE), kannst du diese JAR-Dateien über die JRE "starten". Alternativ über die Kommandozeile:

java -jar "Dateiname.jar"

Dass Java keine exe-Dateien erzeugt, liegt daran, dass die Technologie dahinter es nicht erlaubt, sie ohne die JRE auszuführen: Du brauchst zwingend auch eine JRE, um Java-Programme zu starten. exe-Dateien sind selber lauffähig. Eine JRE kannst du z.B. hier herunterladen.

*prinzipiell gibt es Techniken, mit denen man es hinbekommt. Das würde aber an dieser Stelle zu weit führen und ist auch nicht für Anfänger geeignet.

Woher ich das weiß:Berufserfahrung – Software-Entwicklung (Java Enterprise)
TechPech1984  27.09.2021, 22:40

selbst wenn man das java irgendwie mit compiliert, so kann es nicht geupdatet werden und ist software die praktisch veraltet und unsicher werden könnte .

0
glasair  28.09.2021, 20:29
@TechPech1984

Das könnte man prinzipiell über einen Launcher lösen, der dafür da ist, die eigentliche Anwendung zu updaten.

0

Hey Mendozaa,

Mit der IntelliJ IDEA kannst du deinen Code zu einer Executable Jar kompilieren. Danach mit einem externen Programm zu einer ".EXE". Aber wieso eigentlich? Du kannst auch .JAR Dateien mit einem Doppelklick/per Eingabeaufforderung ausführen.

Mendozaa 
Fragesteller
 27.09.2021, 20:58

Hey 7static,

ich bin noch Anfänger, fange bald ein Studium an und muss davor noch die Grundlagen in Java lernen.

Was mir dazu noch fehlt ist das Wissen, wie ich aus dem geschriebenen Code in der IDE Programme die sich per doppelklick in Windows öffnen lassen erstellen kann (auch für zukünftige "sinnvollere" und "komplexere" Programme).

Wieso das ganze?
Ich würde einfach gerne wissen wie ich solche Programme für Anwender benutzerfreundlich gestalte (ohne Konsole, da insbesondere ältere Anwender da schon aussteigen).

0
7static  27.09.2021, 21:03
@Mendozaa

Wenn du magst kann ich dir das im Discord kurz per Bildschirmübertragung zeigen. Ist wirklich kinderleicht :)

0
TechPech1984  27.09.2021, 22:37
@Mendozaa

für ältere anwender programmiert man es gar nciht in java . sondern nutz gleich das was das zielsystem bietet .

wie gesagt, der weg ist einfach falsch , den java muss auch mal geupdatet werden . du würdest im schlimmsten fall also fehlerhafte sachen fertig compilieren .

du erzeugst also unsichere software ohne das sich der user wehren kann :)

1

ja ne , also wenn dir die bisherigen erklärungen nichts bringen , werde ich dir nix neues erzählen können .

der sinn entgeht mir auch . wer windows hat , kann doch java installieren . oder du lieferst eine redistributable java install mit (wenns erlaubt ist) . machst ein installer und dann eine batch zum starten (bzw einen link) oder ein start client .

Mendozaa 
Fragesteller
 27.09.2021, 20:51

im Rahmen meines Studiums das bald anfängt muss ich einen Crashkurs in Java machen. Bei all dem was in den Onlinevorträgen zu lernen ist fehlt mir einfach die Erklärung wie ich daraus eine einfache ausführbare Anwendung mache (würde ich gerne auch für zukünftige Programme wissen).

Zumal beispielsweise meine Eltern niemals eine solche Anwendung über die Konsole starten und ausführen würden.

0