Warum verwendet eine Desktop-Java-App eine alte JRE?

Warum verwendet eine Desktop-Java-App eine alte JRE?

Um die IT-Richtlinien einzuhalten, habe ich (dachte ich) alle alten Versionen von Java JREs und JDKs von OSX entfernt. java -versiongibt 1.7.0_51 zurück und die Java-Systemsteuerung in den Systemeinstellungen meldet auch Build 1.7.0_51.

Wenn ich jedoch die App DeltaWalker öffne, sendet sie eine HTTP-Anfrage, um nach neuen Versionen zu suchen, und schließt den Header ein User-Agent: Java/1.7.0_40, was natürlich das Schwachstellenerkennungssystem unseres Unternehmens auslöst.

  1. Warum verwendet DeltaWalker nicht die neueste Version?
  2. Wie kann ich herausfinden, welches JRE eine App wie diese oder Eclipse/PhpStorm verwendet?
  3. Wie kann ich diese ältere JRE aufspüren und werden diese Apps durch das Löschen beschädigt?

Antwort1

Wie @Keltari erwähnt hat, bündeln viele Apps ihre eigene Java-Version mit der Anwendung, da sie sich dadurch nicht auf Ihr installiertes Java verlassen müssen, von dem sie nichts wissen.

Sie können die DeltaWalker-Anwendung im Finder öffnen, um zu sehen, was hier passiert. (Ich habe dies mit einer neuen Kopie des DeltaWalker gemacht.Schaden, aber Ihre sollte dieselbe sein). Suchen Sie die DeltaWalker-„Anwendung“, klicken Sie bei gedrückter Strg-Taste oder mit der rechten Maustaste darauf und wählen Sie „Paketinhalt anzeigen“. Navigieren Sie zu , Contents\PlugIns\jre\Contents\Home\um die von der Anwendung verwendete Java-Version anzuzeigen. Sie können in einem Terminalfenster zu diesem Pfad gehen, in den binOrdner gehen und ausführen, java -versionum zu bestätigen, dass es sich um dieselbe Version handelt, die Sie im User-Agent sehen. (Ich kann dies nicht selbst überprüfen, da ich die Anwendung tatsächlich mit 7-zip auf einem Windows-Computer auseinandernehme.)

Theoretisch ist es möglich, diese Java-Version einfach durch eine neuere zu ersetzen, aber angesichts der Tatsache, dass die Anwendungskomponenten möglicherweise sehr eng miteinander verknüpft sind und DeltaWalker viele andere Abhängigkeiten (Hilfs-Programme und JAR-Plugins) mit sich bringt, die ebenfalls Probleme bereiten können, würde ich davor zögern.

Wenn Sie nicht die neueste Version der Anwendung verwenden, sollten Sie diese, wenn möglich, aktualisieren. Wenn dies nicht möglich ist oder die neueste Version noch zu alt ist, wenden Sie sich bitte anDeltopia-Kundendienst.

Antwort2

Ich weiß nichts über Ihre Apps oder Macs, bin jedoch sicher, dass es Windows ähnlich ist.

Einige Anwendungen installieren ihre eigene Java-Version. Normalerweise geschieht dies, weil sie die App nicht mit einer neueren Java-Version getestet haben und nicht garantieren können, dass sie mit einer neueren Version funktioniert. Oder es ist möglich, dass die App nicht mit einer neueren Java-Version kompatibel ist.

Überprüfen Sie, was auch immer Ihre App startet, und prüfen Sie, ob es speziell eine ältere Version startet. Sie können versuchen, diesen Launcher zu entfernen oder ihn so zu bearbeiten, dass er die neueste Version verwendet. Dies kann jedoch die App beschädigen.

Ich würde in den Supportforen Ihrer Apps nach weiteren Informationen suchen.

verwandte Informationen