Swing .jar Datei ausführen

MasterCaution

Mitglied
Hallo,

Ich bin im Thema JAVA noch ein Novize.
Ich habe mir zum Einstieg/Testzwecken eine einfache GUI angelegt.
Wenn ich die .jar Datei mit dem Terminal aufrufe, wird sie dargestellt.
Rufe ich sie direkt aus dem Ordner auf, erscheint die Fehlermeldung:
Die Java-RAR-Datei...konnte nicht geöffnet werden.
Siehe Anhang:
  • Fehlermeldung
  • Javaversion
VG
Steffen
 

Anhänge

  • Bildschirmfoto 2020-04-04 um 21.06.22.png
    Bildschirmfoto 2020-04-04 um 21.06.22.png
    71,5 KB · Aufrufe: 17
  • Bildschirmfoto 2020-04-04 um 21.08.06.png
    Bildschirmfoto 2020-04-04 um 21.08.06.png
    84,1 KB · Aufrufe: 15
  • Bildschirmfoto 2020-04-04 um 21.08.54.png
    Bildschirmfoto 2020-04-04 um 21.08.54.png
    38,1 KB · Aufrufe: 15

MasterCaution

Mitglied
Hallo Tobias,

Verstehe ich nicht.
Wenn ich dir .jar per commandline :
java -jar "/Users/apple/NetBeansProjects/calculator_app/dist/calculator_app.jar"
aufrufe erscheint sie ja...
VG
Steffen
 
K

kneitzel

Gast
Was mich etwas wundert ist, dass Du zwei Bildschirmfotos mit der version gezeigt hast. Über die Kommandozeile wurde scheinbar Version 14 aufgerufen aber bei der Version rein in der GUI ist Version 8? Hast Du evtl. mehrere Java Versionen installiert? Wenn Du den Code mit Java 14 übersetzt hast, dann ist es in der Regeln nicht möglich, diesen mit Java 8 zu öffnen (Man kann beim übersetzen die Target-Version setzen, aber ohne das würde das nicht gehen...)

Was mich auch etwas irritiert ist, dass die Meldung kommt, dass das jar nicht geöffnet werden kann. Kannst Du uns genau sagen, wie Du das jar erstellt hast? Paar mehr Details wären hilfreich, um Dir helfen zu können ...
 
X

Xyz1

Gast
Ehrlich gesagt habe ich die Fehlermeldung noch nie gesehen, aber naja ich benutze kein MacOS :D
 

MasterCaution

Mitglied
Die JDK Version ist die 14-per Kommandozeile
Die reine Java version ist die 8
[...Was mich auch etwas irritiert ist, dass die Meldung kommt, dass das jar nicht geöffnet werden kann. Kannst Du uns genau sagen, wie Du das jar erstellt hast?..]
Ich arbeite mit Netbeans 11.3-dir Jar habe ich mit "clean &build project " erstellt.
hier wird dann auch der Pfad zur .Jar ausgegeben sowie die Komandozeile..
 
K

kneitzel

Gast
Meine Vermutung wäre jetzt, dass es etwas an den Versionen liegt. Aber ich bin jetzt schon weg vom Rechner und nur noch auf dem Handy online.

Ich werde morgen paar Dinge raus suchen, die du mal kontrollieren / testen kannst zusammen mit paar Erläuterungen.
 
X

Xyz1

Gast
Setze die Übersetzungsversionoption in Eclipse mal auf 8. Das ist nicht so schwer, das geht in den Einstellungen des Projektes. Danach lasse die jar erstellen. (Java ist abwärtskompatibel.)

Langfristig solltest du aber auf deinem System nur eine Java Version nutzen (also zum Beispiel das JDK 8 oder 14).

Btw. Ich tippe auch gerade vom Handy. :D Nacht.
 
K

kneitzel

Gast
Also generell erst einmal ein paar allgemeine Informationen:

a) Natürlich kann man mehrere Versionen von Java parallel installiert haben. Das ist etwas, das sogar bei sehr vielen Entwicklern der Fall ist, weil man z,B. eine neue Version nur etwas testen will oder man hat eine Applikation, die noch ein altes JDK benötigt. Also das ist etwas, das vollkommen "normal" und unproblematisch ist.

b) Paar kurze Erläuterungen bezüglich Java (und dem "reinen Java" :) ):
Bei Java wird unterschieden in JDK (Java Development Kit) und JRE (Java Runtime Environment). Das erste enthält wirklich alles, also Compiler, Java VM, ... und das JRE ist nur das, was man zum Ausführen von bestehenden Applikationen braucht. Das JDK enthält also auch das JRE.
Oracle hat früher separate JREs zum Download angeboten. Nach Java 8 wurde aber einiges formelle geändert und es wird kein JRE für 9 und später angeboten (zumindest nicht als freien Download). Das ist aber unkritisch, denn man kann einfach ein JDK installieren.

c) Auf Grund der geänderten Lizenzbedingungen würde ich aber prinzipiell dazu raten, das man einfach ein Anbieter von OpenJDKs nutzt. Hintergrund sind die Lizenzbedingungen von Oracle für seine JDKs. Es ist nicht so, dass man das nicht mehr frei nutzen kann aber es gibt Einschränkungen und ich sehe nicht ein, komplexe Lizenzbedingungen zu studieren und irgendwelche Probleme zu haben wenn ich gewisse Dinge machen möchte... (z.B. Java auch mal mit dem eigenen Produkt weiter geben oder so). Daher ist meine Empfehlung Adoptopenjdk oder Zulu Community.

d) Java-Version in der Console / Terminal:
Wenn ein JDK richtig installiert wurde, dann registriert sich das Java so, dass die Installation mit java_home angezeigt werden kann. Dieses Tool findet sich unter /usr/libexec.
Ein Aufruf von /usr/libexec/java_home zeigt die aktive Java Version an.
Ein Aufruf von /usr/libexec/java_home -v zeigt alle bekannten Java Versionen an.
Ein Aufruf von /usr/libexec/java_home -v <version> zeigt den Installationsort der Java Version <version> an.

Welches java genutzt wird, wird durch die Umgebungsvariable JAVA_HOME festgelegt. Du kannst in der Konsole das jederzeit umsetzen per:
export JAVA_HOME=`/usr/libexec/java_home -v 1.8`
export JAVA_HOME=`/usr/libexec/java_home -v 11`
export JAVA_HOME=`/usr/libexec/java_home -v 14`
...
(Bitte die Backticks beachten. Alternativ zu `...`wäre auch $(...) denkbar meine ich. Ich nutze aber immer die Backticks, daher bin ich da jetzt nicht ganz so sicher mit den Alternativen. Die Backticks gehen halt mit allen Shells und das andere ist meines Wissens nicht auf allen Shells gleich verfügbar - und ich nutze halt auch tcsh und so)

Damit Du eine klare default Java Einstellung hast, kannst Du dies in der Konfiguration des Shell einstellen. Das ist je nahc verwendeter Shell üblicherweise .bash_profile oder .zshrc (Ab 10.15 ist die zsh wohl Standard, davor war es die bash).

e) Es gibt teilweise auch noch Tools für das Umschalten der Java Versionen. jenv, das z.B, über HomeBrew installiert werden kann, fällt mir da auf Anhieb ein. Das ist aber nicht notwendig. Man kann sich ja einfach Aliase machen, wie z.B. auch unter https://stackoverflow.com/questions...r-change-the-default-java-jdk-version-on-os-x zu finden ist.
Daher ist sowas aus meiner Sicht unnötig.

f) Nun kommen wir zum interessanten Aspekt: Öffnen von jar Dateien aus dem Finder heraus.
Hier habe ich die Erfahrung gemacht, dass eigentlich immer die zuletzt installierte JDK Version genutzt wurde. Ich selbst habe das aber so gut wie nie genutzt. Wenn ich eine jar Datei hatte, dann habe ich mir eigentlich immer ein kleines Script gebaut, welches dann die Applikation gestartet hat. In dem Script konnte ich dann die Version immer vorab auswählen und so sicher stellen, dass jede Applikation genau mit der Java Version gestartet wurde, die die Applikation braucht. Eine Installation eines JDKs ist sonst immer mit der Gefahr verbunden, dass dieses Starten nicht mehr funktioniert für alle Applikationen und das ist etwas, das einfach unschön ist.
Und natürlich kannst Du immer aus dem jar eine app machen. Dazu gibt es diverse freie Tools oder wenn man das Format kennt, dann kann man das auch so basteln. Oracle hat den appbuilder mit drin im jdk meine ich (ich nutzte aber kein Oracle jdk als meine Macs noch mit mac os liefen), aber es gibt viele andere Tools:
https://github.com/libgdx/packr (Der bündelt ein JDK / JRE mit.)
http://launch4j.sourceforge.net/ (Evtl. outdated?)
...

Das wäre so die Übersicht, die ich Dir geben kann.

Was für Vorgehen würde ich empfehlen:
- Falls Du ein 8er JRE installiert haben solltest: Das würde ich entfernen.
- Apple Java: Alte Apple Java Versionen sind schlicht: Alt. --> So Du keine Software hast, die das explizit brauchen würde ich hier auch die Deinstallation empfehlen. (Was waren da die Versionen? Das ging bis 1.6 oder 1.7? Einfach Asbach aber das scheint bei Dir zumindest nichts zu sein, das sch die den Vordergrund drängt.
- Einfach das JDK, das Du nutzen willst, (noch einmal) installieren. Das sollte es zum "aktiven" java machen. Geht evtl auch "einfacher", aber das habe ich so nicht parat.
- Meine Empfehlung: Generell nicht jar einfach per Doppelclick starten. Bau ein Startscript oder eine app daraus. (aber zeigt evtl., dass hier jemand schreibt, der viel mit Unix Systemen unterwegs ist und sich da auch Zuhause fühlt :) So Empfehlungen ist nicht immer zu folgen, denn spätestens wenn es um die Frage nach einem Editor gehen sollte wird meine Empfehlung zu vi & co nicht mehr so Nutzer-freundlich sein :) )

<Meine Meinung> Und wenn es um ein JDK geht: Meide Oracle wie der Teufel das Weihwasser. Ok, Streich JDK. Meide Oracle wie der Teufel das Weihwasser. Ich denke, das kann man so stehen lassen. (Ok, manche gehen auch zu einer Domina oder so... Nicht mein Ding. Aber falls man so gewisse Neigungen hat, dann will man vielleicht doch zu Oracle? :) ) </Meine Meinung>

Wenn es um ein JDK geht wären folgende Anlaufstellen meine Empfehlung:
- https://adoptopenjdk.net/
- https://de.azul.com/downloads/zulu-community/?os=macos&architecture=x86-64-bit&package=jdk

Und an Java Versionen: Die aktuelle Version mit Langzeit-Unterstützung ist 11. Das ist so das Minimum, das ich versuchen würden zu halten. Es gibt teilweise noch Firmen, die immer noch 8 einsetzen. Häufig, weil Software noch nicht mit Modulen klar kommt, was aber schlicht bedeutet, dass die Firmen es seid einigen Jahren versäumt haben, etwas zu aktualisieren, was dringend aktualisiert werden sollte. Also 8 kann noch notwendig sein, aber so es dafür keinen Grund gibt, ist 11 das Minimum, das ich empfehlen würde.
Aber Du hast ja schon 14 installiert - das ist natürlich auch ok und damit hast Du Zugriff auf die aktuellsten Features. Das ist garantiert nicht verkehrt!

Die Empfehlung zu Version 8 teile ich nicht. Das würde ich auf keinen Fall nutzen. Alleine schon, weil dann bei Fragen Lösungsvorschläge teilweise nicht funktionieren. Auf 8 arbeiten viele nicht mehr, d.h. wir nutzen auch neuere features und wir haben oft nicht im Kopf, ob nun eine Methode schon in 8 vorhanden war oder ob die erst mit 9, 10 oder 11 gekommen ist...

Das war dann so eine Übersicht der Punkte, die ich für wichtig erachte. Hoffe es war hilfreich und verständlich. Bei Fragen einfach noch einmal fragen. Derzeit habe ich kein mac os System im Zugriff um Dinge nach zu stellen / zu testen, aber so wirklich der Bedarf aufkommt kann ich auch noch einmal meinen mac mini am KVM Switch anschließen und in Betrieb nehmen. Der müsste noch in meinem Hardware-Schrank liegen (hoffe ich mal) ...
 

MasterCaution

Mitglied
Mein Lieber JustNobody,

vielen Dank für die ausgiebige Information, die muß ich erst einmal durchkauen u. verdauen.
So habe ich mir eine kompetente Hilfestellung vorgestellt,Top!

Zu deine Punkten:
Ich war der Meinung , das ich Java + die JDK brauche...
Demzufolge hab ich mir bei Oracle die aktuelle Javaversion runtergeladen & installiert+ die aktuelle JDK

Wie ich dich jetzt verstanden habe brauche ich nur dir JDK?

... Ich habe es gerade ausprobiert:

Es funktioniert.
Danke an alle besonders nochmal an dich JustNobody


VG
Steffen
 
Zuletzt bearbeitet:
K

kneitzel

Gast
Freut mich, dass ich Dir etwas helfen konnte. Solltest du erneut auf Probleme stoßen dann melde Dich einfach wieder.
 
K

kneitzel

Gast
Probier mal SdkMan! aus. Du wirst es nicht missen wollen. Jedenfalls ging es mir so.
Danke, werde ich mal einen Blick drauf werfen. Wobei ich derzeit keinen OS X mehr im Einsatz habe. Da mir die Entwicklung bei der Hardware nicht zusagt bin ich erst einmal komplett auf Workstations zurück gewechselt. Leasingrückläufer von Workstations sind Recht preiswert zu bekommen und liefern auch gute Leistung für mehrere Jahre... Und das halt dann ohne OS X.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Java Datei durch CMD mit Parameter ausführen AWT, Swing, JavaFX & SWT 1
T .jar-Datei lässt sich unflexibler ausführen als über die IDE AWT, Swing, JavaFX & SWT 11
F Bilder zu ausführbarer Jar-Datei hinzufügen AWT, Swing, JavaFX & SWT 5
M Daten zufällig Einlesen aus einer Datei (binäres Format) AWT, Swing, JavaFX & SWT 7
ExceptionOfExpectation Mit einer laufenden GUI Applikation eine Datei in dem Rechner löschen AWT, Swing, JavaFX & SWT 2
melaniemueller Wortliste in einer Datei ablegen AWT, Swing, JavaFX & SWT 12
princess_sara1997 .jar Datei führt den Code nicht richtig aus AWT, Swing, JavaFX & SWT 19
Yonnig Lokale HTML-Datei in Java GUI rendern AWT, Swing, JavaFX & SWT 4
N JavaFX Javafx intelij Projekt zu ausführbaren jar Datei Machen AWT, Swing, JavaFX & SWT 1
Jose05 JavaFX: eigene FXML-Datei für einen Button AWT, Swing, JavaFX & SWT 3
T FXML Datei in Java Code einbinden: javafx.fxml.LoadException AWT, Swing, JavaFX & SWT 2
BabySuna Swing Komponenten auslagern auf separate Datei AWT, Swing, JavaFX & SWT 8
B JavaFX JavaFX Anwendung deployen (entw als runnableJAR oder exe-Datei) AWT, Swing, JavaFX & SWT 15
M Eine Datei auf den Apache Server hochladen - über das Menü im JavaProgramm AWT, Swing, JavaFX & SWT 7
VPChief Gibt es eine möglichkeit Dateien aus der jar datei zu kopieren? AWT, Swing, JavaFX & SWT 46
H Daten aus einer XML(x83-Datei) in einem JFrame anzeigen lassen AWT, Swing, JavaFX & SWT 9
A Swing Datei lässt sich zwar speichern, aber nicht laden (Inhalt im JTextField anzeigen) AWT, Swing, JavaFX & SWT 18
K Probleme bei der Erstellung und Ausführung einer Jar Datei AWT, Swing, JavaFX & SWT 2
G Verknüpfung einer pdf Datei AWT, Swing, JavaFX & SWT 2
N Ausführbare Datei aus JavaFX Projekt erstellen AWT, Swing, JavaFX & SWT 22
L Bilder werden in exportierter Datei nicht geladen AWT, Swing, JavaFX & SWT 6
L Csv-Datei einlesen AWT, Swing, JavaFX & SWT 34
J *.jar öffnet PDF-Datei nicht AWT, Swing, JavaFX & SWT 35
M JavaFX Altes Fenster (FXML Datei) löschen AWT, Swing, JavaFX & SWT 16
F Java FX Von der Fxml Datei zum Objekt AWT, Swing, JavaFX & SWT 8
A JavaFX Anwendung in Jar Datei AWT, Swing, JavaFX & SWT 8
F FXML Datei aus dem SceneBuilder in Eclipse aufrufen AWT, Swing, JavaFX & SWT 1
J Swing JavaProgramm für Verschlüssen für eine Datei AWT, Swing, JavaFX & SWT 19
Kanda Sorata Inhalt einer .txt Datei einlesen und in ein Label einfügen (JavaFX) AWT, Swing, JavaFX & SWT 2
H Musik wird nach dem erstellen der .jar Datei nicht mehr abgespielt AWT, Swing, JavaFX & SWT 1
H JavaFX aus der .fxml Datei einen Konstruktor bedienen AWT, Swing, JavaFX & SWT 3
P JavaFX - XCF Datei von Gimp kann nicht angezeigt werden AWT, Swing, JavaFX & SWT 3
M Wie binde ich eine JavaFX ProgressBar an eine Datei Übertragung? AWT, Swing, JavaFX & SWT 2
7 JavaFX Verwendung einer ResizableCanvas-Klasse in fxml-Datei AWT, Swing, JavaFX & SWT 3
C JavaFX Auf Nodes einer FXML-Datei in start Methode zugreifen AWT, Swing, JavaFX & SWT 5
F Pfad von eingelesener Datei AWT, Swing, JavaFX & SWT 10
Crazynet xls Datei in JTable AWT, Swing, JavaFX & SWT 3
D Objekte einer Oberfläche in eine Datei/Ordner speichern AWT, Swing, JavaFX & SWT 9
P Programm durch Dateiaufruf starten und Datei öffnen AWT, Swing, JavaFX & SWT 2
G .txt-Datei einlesen /formatieren in JTextfield ?? AWT, Swing, JavaFX & SWT 8
B ST Datei einlesen AWT, Swing, JavaFX & SWT 1
D JavaFX Jar Datei Signieren mit Java 8u45 AWT, Swing, JavaFX & SWT 2
M Datei mit Komponenten einbinden AWT, Swing, JavaFX & SWT 7
M Swing PDF Datei nach drucken nicht löschbar AWT, Swing, JavaFX & SWT 6
A Databinding in FXML-Datei AWT, Swing, JavaFX & SWT 1
H 2D-Grafik .EPS Datei in .PNG konvertieren AWT, Swing, JavaFX & SWT 1
G Datei öffnen Dialog modifizieren AWT, Swing, JavaFX & SWT 13
F Swing Java Swing Array in Datei und wieder raus AWT, Swing, JavaFX & SWT 7
L 2D-Grafik PNG Datei in JLabel Array Problem AWT, Swing, JavaFX & SWT 4
B JAVAFX und CSS Datei in Eclipse AWT, Swing, JavaFX & SWT 4
3 Swing JList-Inhalt als verschlüsselte Datei schreiben und lesen AWT, Swing, JavaFX & SWT 1
S Aus XML Datei FXML generieren AWT, Swing, JavaFX & SWT 4
V JavaFX - fxml-Datei laden (neben CSS) AWT, Swing, JavaFX & SWT 2
S Swing Verzeichnis/Datei-Pfad in JTextField schreiben AWT, Swing, JavaFX & SWT 2
A JFileChooser Datei speichern AWT, Swing, JavaFX & SWT 4
T Aus JAVA.Jar GUI eine Flash-Datei machen AWT, Swing, JavaFX & SWT 3
A Datei weiterverwenden mit JFileChooser AWT, Swing, JavaFX & SWT 6
A AWT TTF-Datei zu Font-Objekt finden? AWT, Swing, JavaFX & SWT 5
Iron Monkey Nach Drag & Drop die Datei auf Komponent darstellen AWT, Swing, JavaFX & SWT 2
J JFileChooser - Datei speichern AWT, Swing, JavaFX & SWT 7
M Datei in jar öffnen AWT, Swing, JavaFX & SWT 11
W Funktion aus einer Java Datei in eine andere einbauen AWT, Swing, JavaFX & SWT 25
P Neue Datei erstellen in JPanel AWT, Swing, JavaFX & SWT 5
N Speicherpfad für Datei auswählen AWT, Swing, JavaFX & SWT 2
A JTextArea - Zeichenbegrenzung nach .txt Datei import AWT, Swing, JavaFX & SWT 6
N Applet JButton soll html Datei aus einem Ordner öffnen AWT, Swing, JavaFX & SWT 2
E Swing jTextPane Text datei anzeigen AWT, Swing, JavaFX & SWT 7
M Datei Speichern unter Dialog - SWT AWT, Swing, JavaFX & SWT 3
T SWT:Datei speichern / öffnen AWT, Swing, JavaFX & SWT 6
X Applet Java Applet Datei Ausführung AWT, Swing, JavaFX & SWT 9
J Bild aus Datei in BufferedImage laden AWT, Swing, JavaFX & SWT 4
M Swing XML Datei in JTable darstellen + verändern AWT, Swing, JavaFX & SWT 3
D Swing JTable in Datei speichern und laden AWT, Swing, JavaFX & SWT 3
J Fehler beim Gif Datei öffnen AWT, Swing, JavaFX & SWT 2
N Swing TreePath Datei öffnen AWT, Swing, JavaFX & SWT 7
B Datei öffnen Dialog AWT, Swing, JavaFX & SWT 9
kodela Swing JFileChooser und die Datei-Extension AWT, Swing, JavaFX & SWT 3
T Info Datei AWT, Swing, JavaFX & SWT 3
J ImageIcon: ZipException bei ungültiger PNG-Datei AWT, Swing, JavaFX & SWT 2
W jar Datei öffnen AWT, Swing, JavaFX & SWT 4
W TrayIcon mit jdic (Problem bei .jar Datei) AWT, Swing, JavaFX & SWT 3
D Nodes eines statischen JTrees sollen auf Anker (Textmarken) in einer HTML-Datei zeigen AWT, Swing, JavaFX & SWT 8
R Swing XML Datei in JTree, Problem mit Daten einlesen AWT, Swing, JavaFX & SWT 34
M AWT Datei auf server speichern und beschreiben AWT, Swing, JavaFX & SWT 7
P JMenu-Erweiterung in externer Datei AWT, Swing, JavaFX & SWT 5
M Text in txt-Datei in letzte Zeile schreiben? AWT, Swing, JavaFX & SWT 14
X Swing Inhalt einer JEditorPane in Datei abspeichern AWT, Swing, JavaFX & SWT 5
E Datei in TextArea anzeigen AWT, Swing, JavaFX & SWT 12
data89 Nimbus Look and Feel als gepackte JAR-Datei AWT, Swing, JavaFX & SWT 3
S Auswahlfenster: Datei beim Doppelklick öffnen AWT, Swing, JavaFX & SWT 8
N Swing Hintergrund Bild in JAR Datei AWT, Swing, JavaFX & SWT 2
I Swing .Jar Datei - funktioniert - nun als Applet AWT, Swing, JavaFX & SWT 13
M Text-Datei in einem JFrame öffen? AWT, Swing, JavaFX & SWT 2
Fadi Images in JAR Datei laden? AWT, Swing, JavaFX & SWT 5
K Hyperlink als Datei identifizieren AWT, Swing, JavaFX & SWT 2
S Jar-Datei funktioniert nicht richtig AWT, Swing, JavaFX & SWT 3
1 Laden einer Datei zur Echtzeit Darstellen AWT, Swing, JavaFX & SWT 7
P Problem bei Datei zur Verwaltung von Tabs AWT, Swing, JavaFX & SWT 5
F png-Datei erstellen und einzelne Pixel schreiben AWT, Swing, JavaFX & SWT 2
A Ini Datei Auswerten - HILFE! AWT, Swing, JavaFX & SWT 6

Ähnliche Java Themen

Neue Themen


Oben