java und josm - Lizenz

@Wulf4096: Das erste Zitat stammt von User Redoute, nicht von mir. Wurde korrigiert. Danke!

Im Firmenumfeld kann es kein “Personal Use” geben, da Java auf einem Firmen-PC installiert ist. Oracle interessiert dabei nicht, ob man das nur in der Pause verwendet.

Nur mal so am Rande:
Woher weiß Oracle eigentlich ob ein PC privat oder geschäftlich genutzt wird?

Huch, wie ist denn das passiert?!

Aus dem Lizenztext lese ich das aber raus. Wie Oracle tatsächlich damit umgeht, weiß ich nicht.

Für die Fragestellung in diesem Thread dürfte das nicht weiter wichtig sein.

Einzelfallprüfung?
Natürlich hast du die technische Möglichkeit, gegen die Lizenzbestimmungen zu verstoßen. Aber sowas soll und darf man nicht. Wenn Oracle das mitbekommt, wird’s aber wohl teuer.

In welcher Art?

Wozu sollten in einer Firma PCs zur privaten Nutzung stehen? Alles was im Firmen-LAN hängt ist zur geschäftlichen Nutzung bestimmt. Es wird schwierig Oracle vom Gegenteil zu überzeugen. Und die Menge an lizenzpflichtigen Geräten/Nutzern kann im Rahmen eines Lizenzaudits überprüft werden.

Hab jetzt erst gesehen, dass bei adoptopenjdk auch “kleine” JRE-Versionen zum Download angeboten werden.

Nach der Installation (JRE Version 11 Windows 64bit) ließ sich josm-tested.jar per Doppelklick starten. :slight_smile:

Der JOSM-Installer hat im Startmenü eine Verknüpfung auf josm.exe abgelegt, die funktioniert nicht mehr. josm.exe beschwert sich über die fehlende Runtime und ruft die Oracle-Downloadseite im Browser auf. Ich hab die Verknüpfung jetzt auf .jar gelegt.

In der Kommandozeile ließ sich java erst aufrufen, nachdem ich einige Altlasten bereinigt habe: C:\ProgramData\Oracle gelöscht (einziges Unterverzeichnis war Java), C:\Program Files (x86)\Common Files\Oracle\Java\javapath und C:\ProgramData\Oracle\Java\javapath aus dem Pfad gelöscht, Computer\HKEY_CURRENT_USER\Software\AppDataLow\Software\JavaSoft und Computer\HKEY_CURRENT_USER\Software\JavaSoft aus der Registry gelöscht. Vermutlich war es eines davon.

Andere Programme versuche ich erst, wenn ich sie benötige.

Danke an alle, Redoute!

Um der ganzen Lizenzdiskussion aus dem Weg zu gehen, wurde in unserer Firma übrigens vor einem Jahr beschlossen, komplett auf OpenJDK zu setzen, für Windows auf AdoptOpenJDK, das zu dem Zeitpunkt den am besten gepflegten Eindruck machte.

Gruß,
Zecke

Allerdings scheint AdoptOpenJDK zurzeit nicht als JRE für LibreOffice zu funktionieren, im Gegensatz zu den JDK von Oracle OpenJDK und Amazon Corretto. Ist mir eigentlich unwichtig, hat mich trotzdem noch einige Zeit gekostet, das herauszufinden.

Hier ein aktuelles Statement von JOSM-Entwickler Vincent Privat zu der Thematik mit geschichtlichem Abriss und Erläuterungen zum aktuellen Stand (auf Englisch):
https://twitter.com/josmeditor/status/1125135390426505218
https://osm.org/user/josmeditor/diary/172694
https://weeklyosm.eu/josm-and-java-on-german-forum
(inhaltlich sind die drei Links identisch)

Da dieser Thread in der aktuellen Wochennotiz verlinkt ist, wurde das Java-Thema von einem JOSM-Entwickler nochmal kurz zusammengefasst und erklärt: https://twitter.com/josmeditor/status/1125135390426505218

Der mag gerne mal erklären, in wieweit es jetzt noch legal ist, JOSM mit Oracle-Java zu nutzen, ohne für die Lizenz zu blechen.
JOSM zählt imo nicht unter “Personal Use”!

Gilt für etliche andere Anwendungen auch: Die ehemaligen JRE-Pfade von Oracle sind dutzende Male in der Windows-Registry begraben und führen dann zu Fehlermeldungen “This application requires a Java Runtime Environment 1.7/1.8” o.ä., u.a. bei EXE-Startprogrammen, die “komfortabel” jar-Anwendungen aufrufen wie JOSM.EXE oder MediathekView__Start.exe.

Auch die Installation von AdoptOpenJDK JRE 1.8 hilft da nicht, die verborgenen Verweise auf die Oracle-Binaries bleiben.

Das lässt sich zwar durch direkten Aufruf der jar-Files umgehen, aber bis der Umstieg von Oracle auf AdoptOpen problemlos auch für den Normalanwender gelingt, ist noch etwas Arbeit bei der Installationsprozedur nötig.

Hallo,
ich hole diesen Beitrag noch einmal nach vorne. Meine aktuelle Java Version ist 8.xxx. Bisher liefen damit alle Programme und wenn Java automatisch ein Update anbot war es wieder ein höheres mit der 8 vorne. Nun wollte ich eine neue Version von einem Programm installieren. Das klappte nicht und es kam der Hinweis, dass es mindestens Java 11.xxx benötigt.
Auf der Java Homepage wird auch Java 11 angeboten. Soweit ich das bisher verstehe wäre auch Java 11 für Privatnutzer weiterhin kostenlos.
Aufgrund der Diskussion in diesem Forum blicke ich aber nicht mehr so ganz durch ob ich damit auch weiterhin JOSM nutzen kann (Punkt 1) was mir natürlich äußerst wichtig ist und auch nutzen darf (Punkt 2).
Könnte jemand einmal Licht ins Dunkle bringen?

Vielen Dank

Welches Java? Das von Oracle oder OpenJDK?

Zum Oracle Java mag ich nix sagen aber OpenJDK ist definitiv frei - und funzt auch mit Josm.

Gruss
walter


java --version
openjdk 11.0.4 2019-07-16
OpenJDK Runtime Environment (build 11.0.4+11-post-Ubuntu-1ubuntu219.04)
OpenJDK 64-Bit Server VM (build 11.0.4+11-post-Ubuntu-1ubuntu219.04, mixed mode, sharing)

Hallo und Danke für den Hinweis auf open jkd,
ich hab jetzt das oracle Java 8.xxx deinstalliert und das openjdk-Java (Verison 11 und 12 ausprobiert) in den Programmordner entpackt. Anschließend dann unter Systemsteuerung - System - erweiterte Systemeinstellungen - Umgebungsvariablen - die Benutzer und Systemvariablen angepasst. Anschließend sogar neu gestartet und dann versucht Josm zu starten. Leider meldet JOSM trotz mehrfacher Versuche, dass es kein Java findet. Also das openjdk wieder entfernt und das alte oracle Java 8.xxx wieder neu instlliert. JOSM läuft - uff, nix kaputt gemacht.
Trotzdem hab ich keinerlei Ahnung warum Josm kein Java findet…

:confused:

PS: Ich arbeite an einem PC mit win10

Welches JOSM? jnlp, jar oder Installer?

Ich nutze die jar-Version zusammen mit OpenJDK unter Windows 10 folgendermaßen:

  • josm-tested.jar liegt in C:\Program Files (x86)\JOSM (sowie eine logo.ico, damit die Desktop-Verknüfpung hübsch aussieht :))
  • OpenJDK liegt im Ordner C:\Program Files\Java\jre (darunter also die Ordner bin, conf usw.)
  • In der Systemvariable “Path” steht “C:\Program Files\Java\jre\bin”, in der “JAVA_HOME” steht “C:\Program Files\Java\jre”
  • In der Registry ist außerdem unter HKLM > Software > Classes > jarfile > Shell > Open > Command ein Eintrag “C:\Program Files\Java\jre\bin\javaw.exe” -jar “%1” %* (Typ: REG_EXPAND_SZ). Damit kann die jar-Datei per Doppeklick geöffnet werden.

Ich hatte vorher auch Oracle Java. Das habe ich deinstalliert und manuell alles gelöscht, was irgendwie noch damit zusammenhängen könnte (File-Ebene und auch Registry), gefolgt von einem Boot bevor ich das obige konfiguriert habe.

EDIT: JAVA_HOME ergänzt

Nicht so schnell die Flinte ins Korn werfen …

JOSM sucht gar nicht selbst nach Java. JOSM sagt dem Betrübssystem nur „Ich bin übrinx eine Java-Anwendung“, und dann macht sich Windoof auf die Suche nach einer Java-Laufzeitumgebung und hat bei dir vermutlich an der falschen (alten) Stelle danach gesucht.

Das von aixbrick vorgeschlagene Vorgehen scheint mir erfolgversprechend. Ob Java gefunden wird, kannst du in einer Shell überprüfen, indem du dort java -version (oder --version, bei mir tut beides) eintippselst. Wenn das von wambacher Zitierte ausgegeben wird, wird Java vom System gefunden, ansonsten musst du ihm sagen, wo Java liegt.

–ks

…Ich habe die last-tested
In der Systemvariablen hab ich JAVA_HOME als neuen Namen eingefügt und hier den Pfad zum Java eingegeben
in den Benutzervariablen unter Path den Pfad zum openjdk zusätzlich eingefügt.
Eine Registryänderung habe ich nicht durchgeführt.

Die Vorgehensweise wurde hier beschrieben: https://www.virtualberater.com/index.php/2019/01/20/windows-10-auf-open-jdk-umstellen/

Ich habe dann das dort gezeigte Video genutzt…

Stimmt, JAVA_HOME ist bei mir auch gesetzt. Ich habe es oben ergänzt. Bei den Benutzervariablen habe ich übrigens nichts eingetragen, was mit Java zu tun hat.