Java-Programm läuft bei installierter JDK aber nicht mit JRE?

Albyricus

Neues Mitglied
Hi Leute,

ich habe auf Java mein erstes Programm mit Netbeans geschrieben, welches eine GUI besitzt, inkl. Jframe und Jslider. Auf dem Rechner wo es erstellt wurde ist die JDK12 installiert und in Netbeans it JDK11 eingestellt, damit es auf einem Raspberry auch läuft (Dort ist die aktuellste Java Version noch nicht verfügbar). Auf dem Win10 Rechner mit Netbeans ist es sofort gelaufen, auf dem Raspberry Pi 3 mit Debian (also Linux) auch, auf einem anderen Win10 Rechner welcher zuerst nur die JRE instlaliert hatte kam folgender Fehler:

“A JNI error has occurred, please check your installation and try again”

Ich habe die JRE 2x komplett deinstalliert und wieder neu aufgespielt und es hat nie funktioniert. Als ich dann die JDK12 nachinstalliert habe lief es sofort tadellos.

Mein Ziel wäre es aber, dass dieses Javaprogramm auch auf Rechnern läuft, die nur die JRE installiert haben…
Meine bisherigen „Suchmaschienen Anfragen“ haben mich aber nicht auf den Punkt gebracht, was ich in meiner Java-Programmierung (oder dem Build) ändern muss, damit es auch unter einer JRE läuft. (Eigentlich war ich der Meinung, dass dies auch so sein müsste...)

(Wie schon angedeutet bin ich recht neu in Programmierung und Java)
Deswegen: wo bitte liegt „der Fehler“?

Vielen Dank vorab.
 
Also mich würde da interessieren:
a) In Deinem Code: welches Package gibst Du da an? So ein JNI Fehler kann kommen, wenn man Package Namen benutzt, die vom System auch benutzt werden. (Aber ohne Details zu wissen ist das stochern im Nebel!) Also nix mit java oder so als Package namen benutzen! Nutz eine eigene Domain reverse oder falls Du das nicht hast, dann eine email-Adresse reverse also sowas wie de.web.myuser falls Du myuser@web.de als Email Adresse haben solltest. Oder falls du keine Veröffentlichung planst: Dann nimm einen Projektnamen wie myjavatests oder so in der Art.)
b) Was für ein JRE versuchst Du denn zu installieren? Teilweise bekommt man ja nur noch ein JDK und kein JRE mehr. (Bei Oracle ist das JRE 8 das Letzte, das veröffentlicht wurde meine ich. Aber ich nutze Oracle nicht mehr. Azul z.B. bietet auch noch JREs ...)
 
Also mich würde da interessieren:
a) In Deinem Code: welches Package gibst Du da an? So ein JNI Fehler kann kommen, wenn man Package Namen benutzt, die vom System auch benutzt werden. (Aber ohne Details zu wissen ist das stochern im Nebel!) Also nix mit java oder so als Package namen benutzen! Nutz eine eigene Domain reverse oder falls Du das nicht hast, dann eine email-Adresse reverse also sowas wie de.web.myuser falls Du myuser@web.de als Email Adresse haben solltest. Oder falls du keine Veröffentlichung planst: Dann nimm einen Projektnamen wie myjavatests oder so in der Art.)
b) Was für ein JRE versuchst Du denn zu installieren? Teilweise bekommt man ja nur noch ein JDK und kein JRE mehr. (Bei Oracle ist das JRE 8 das Letzte, das veröffentlicht wurde meine ich. Aber ich nutze Oracle nicht mehr. Azul z.B. bietet auch noch JREs ...)

😱 😳autsch...... da merkt man wohl den blutigen Anfänger in mir der von Phyton und Bash scripten kommt.... es war Oracle JRE 8 installiert..... Mir war (bis jetzt) nicht klar, dass die JRE8 nicht mit der JDK12 kann (dachte wenn die JRE auf der aktuellsten Version ist müsste es die aktuellste JDK verstehen)... 😵 Danke fürs Augen öffnen...
 
Da‘s noch unerwähnt ist: du kannst auch mit JDK 12 Code für Version 8 schreiben (genauso, wie du das aktuell ja auch für 11 machst), musst nur IDE/Buildtool entsprechend einstellen 😉
 

Zurück
Oben