AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Wie geht man mit dem Java Runtime Environment um, wenn man .jar-Dateien ausführen wil
Thema durchsuchen
Ansicht
Themen-Optionen

Wie geht man mit dem Java Runtime Environment um, wenn man .jar-Dateien ausführen wil

Ein Thema von bcvs · begonnen am 18. Okt 2024 · letzter Beitrag vom 14. Jan 2025
Antwort Antwort
bcvs

Registriert seit: 16. Jun 2011
714 Beiträge
 
Delphi 12 Athens
 
#1

Wie geht man mit dem Java Runtime Environment um, wenn man .jar-Dateien ausführen wil

  Alt 18. Okt 2024, 12:13
Hallo zusammen,

ich will eine .jar-Datei mit ausliefern und aus meinem Delphi-Programm heraus ausrufen. Konkret geht es um die Mustang-CLI-2.14.0.jar vom Mustangprojekt für ZuGFeRD-Rechnungen.

Jetzt kann ich ja nicht davon ausgehen, dass auf jedem Ziel-Rechner beim Kunden das Java Runtime Environment (JRE) installiert ist. Das JRE mit auszuliefern widerspricht aber anscheinend den Lizenzbestimmungen von Oracle (s. Screenshot von der Installation des JRE).

Und auf https://www.oracle.com/downloads/lic...-license1.html steht:

Zitat:
You may not: ... make the Programs available in any manner to any third party (other than Contractors acting on Your behalf as set forth in this Agreement)
Wie kriege ich denn jetzt das JRE auf den Kundenrechner? Oder wie geht ihr damit um?
Miniaturansicht angehängter Grafiken
18-10-2024-11-51-15.png  
  Mit Zitat antworten Zitat
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.674 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Wie geht man mit dem Java Runtime Environment um, wenn man .jar-Dateien ausführen

  Alt 18. Okt 2024, 13:21
Man nimmt eine offene JRE, z.B: https://github.com/adoptium

https://github.com/adoptium/temurin1..._17.0.6_10.zip
Sven Harazim
--
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.287 Beiträge
 
Delphi 12 Athens
 
#3

AW: Wie geht man mit dem Java Runtime Environment um, wenn man .jar-Dateien ausführen

  Alt 18. Okt 2024, 14:23
Siehe auch im Delphi-Setup, bzw. Tools > Platformen verwalten
do findest du auch den Namen einer offnenen JRE, welche genutzt werden kann.

Und dann ab in die Sandbox und schauchen, ob auch alles geht (dabei ist).
https://www.delphipraxis.net/207151-...s-sandbox.html
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
bcvs

Registriert seit: 16. Jun 2011
714 Beiträge
 
Delphi 12 Athens
 
#4

AW: Wie geht man mit dem Java Runtime Environment um, wenn man .jar-Dateien ausführen

  Alt 18. Okt 2024, 15:52
Danke euch, damit komme ich klar.
  Mit Zitat antworten Zitat
bcvs

Registriert seit: 16. Jun 2011
714 Beiträge
 
Delphi 12 Athens
 
#5

AW: Wie geht man mit dem Java Runtime Environment um, wenn man .jar-Dateien ausführen

  Alt 14. Jan 2025, 09:15
Eine weitere Frage in dem Zusammenhang:

Es hat sich herausgestellt, dass auf den Kundenrechnern teilweise ältere Java-Versionen vorhanden sind, mit denen das Mustangprojekt nicht klarkommt.

Jetzt könnte ich natürlich die freie JRE mit deren Installations-Setup installieren. Dann trägt sie sich in den Environment-Path des Kundenrechners ein und sorgt so dafür, dass sie evtl. auch von anderer Software auf dem Kundenrechner verwendet wird, was ja nicht unbedingt gewollt wird.

Am liebsten würde ich "meine" JRE mit einer eigenen Installations-Routine geräuschlos in meinen Programm-Ordner installieren und von da aus verwwenden. Dann wäre sie weitgehend unsichtbar für andere Programme und ich hätte die Sicherheit, dass meine Software funktioniert ohne eine passende JRE suchen und/oder einstellen zu müssen.

Ist das legitim? Wenn das jeder macht, gibt es irgendwann sehr viele JREs auf dem Rechner, obwohl theoretisch eine reichen würde.
Wie macht Ihr das?
  Mit Zitat antworten Zitat
Benutzerbild von gubbe
gubbe

Registriert seit: 8. Okt 2005
Ort: Schleswig-Holstein
150 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Wie geht man mit dem Java Runtime Environment um, wenn man .jar-Dateien ausführen

  Alt 14. Jan 2025, 10:06
...
Am liebsten würde ich "meine" JRE mit einer eigenen Installations-Routine geräuschlos in meinen Programm-Ordner installieren und von da aus verwwenden. Dann wäre sie weitgehend unsichtbar für andere Programme und ich hätte die Sicherheit, dass meine Software funktioniert ohne eine passende JRE suchen und/oder einstellen zu müssen.

Ist das legitim? Wenn das jeder macht, gibt es irgendwann sehr viele JREs auf dem Rechner, obwohl theoretisch eine reichen würde.
Wie macht Ihr das?
So viele Javaprogramme hat man üblicherweise auch nicht auf dem Rechner, dass man irgendwann sehr viele JREs hat. Ich würde auch eine mit dem Programm bündeln, die nicht installiert werden muss, um Probleme zu vermeiden.
So kannst Du sicherstellen, dass Dein Programm damit funktioniert und Du durch Deine Installation keine anderen Programme beeinflusst.

Inzwischen ist Java auch recht modular aufgebaut, so dass Du eine "Custom Runtime" erstellen kannst, die nur die für Dein Programm benötigten Bibliotheken enthält und damit deutlich kleiner wird, als das allgemeine JRE.
Es gibt entsprechende Anleitungen, z.B. bei Adoptium. Suche nach dem Begriff "jlink".

Wenn Dein Programm in einem Netzwerk auf verschiedenen Arbeitsplätzen läuft, könnte es vielleicht interessant sein, den Java-Teil auszulagern auf einen Server und dort nur einmal zentral zu installieren, um das Mustangprojekt als Dienst aufzurufen.

Nachdenken würde ich vielleicht noch über den Sicherheitsaspekt. Wenn Du die JRE mitlieferst, musst Du das natürlich im Auge behalten, wenn es sicherheitsrelevante Updates gibt. Installiert der Kunde die JRE selbst, wäre er verantwortlich für Updates. Aber wenn da sowieso schon ältere Versionen vorhanden sind, hat das beim Kunden bisher ja anscheinend nicht geklappt mit dem Aktualisieren

Edit:

Der Vollständigkeit halber hier noch der Link zur Anleitung bei Adoptium:
https://adoptium.net/de/blog/2021/10...e-own-runtime/

Also mit jdeps schauen, was benötigt wird und mit jlink eine eigene JRE erstellen.

Geändert von gubbe (14. Jan 2025 um 10:12 Uhr) Grund: Link hinzugefügt
  Mit Zitat antworten Zitat
bcvs

Registriert seit: 16. Jun 2011
714 Beiträge
 
Delphi 12 Athens
 
#7

AW: Wie geht man mit dem Java Runtime Environment um, wenn man .jar-Dateien ausführen

  Alt 14. Jan 2025, 12:21
Alles klar, danke für den Tip
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:00 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz