Aufgrund von Änderungen im Release-Zyklus von Oracle und Änderungen im Lizenz-Support-Format denke ich, dass die Java-Community derzeit mit Support beschäftigt ist. Bezahlte Unterstützung ist in Bezug auf die Kosten schwierig, und es gibt viele Fälle, in denen der Veröffentlichungszyklus nur ein halbes Jahr beträgt. Daher scheint Adopt OpenJDK als Option einer der führenden Kandidaten zu sein. Ich habe versucht, es zu erkunden und vorzustellen, deshalb werde ich es hier zusammenfassen.
** Ergänzung. Zunächst wollte ich den Artikel auf AdoptOpenJDK 11 ändern. Ich habe diesen Artikel während des Upgrades der Anwendungsversion geschrieben, aber unterwegs habe ich festgestellt, dass die Kernbibliothek Java 9 oder höher nicht unterstützt. Ich werde es bei einer anderen Gelegenheit versuchen, um den Artikel zu vervollständigen, aber bis dahin kann ich nur an AdoptOpenJDK Java9 schreiben. ** ** **
from Java:Oracle Java 8 to java:AdoptOpenJDK9 OS:Windows 64bit、Linux(CentOS)64bit
Herunterladen von AdoptOpenJDK. Die neueste Release-Seite kann möglicherweise nur für eine einzelne Plattform erstellt werden. Ich denke, es ist besser, sie einzeln auf der Archivseite unten auszuwählen. https://adoptopenjdk.net/archive.html
Es kommt nicht mit einem Installationsprogramm wie Oracle Java. Die offizielle Installationsmethode wird im Folgenden kurz erläutert, ist jedoch etwas subtil (ich verwende JAVA_HOME nicht), daher werde ich sie ein wenig ändern. https://adoptopenjdk.net/installation.html?variant=openjdk8&jvmVariant=hotspot
Java8 Zuerst aus Java 8. Als Voraussetzung ist das ursprüngliche Java 8, daher sollte es ohne Probleme funktionieren.
Obwohl es auf die UNIX-Umgebung beschränkt ist, kann leicht vergessen werden, den Einstellungswert von securerandom.source zu ändern. Notieren Sie ihn daher hier. Die anfängliche Einstellung für die Zufallszahlengenerierung ist "/ dev / random", muss aber nicht so streng sein, und die Verzögerung aufgrund der Erschöpfung von Zufallszahlen ist problematischer. Deshalb habe ich die Einstellung auf "/ dev / urandom" geändert. Ich denke, es gibt viele Umgebungen. In einer solchen Umgebung müssen Sie daran denken, die Einstellungen nach der Installation des Adopt Open JDK sowie die vorhandenen Einstellungen zu ändern. Vergessen Sie nicht, die Einstellungen für ** jede Version ** zu ändern. Weitere Informationen zum Ändern von Einstellungen finden Sie hier: http://otndnld.oracle.co.jp/document/products/E13153_01/wlcp/wlss40/configwlss/jvmrand.html
Java9 Onimon verursacht eine Reihe von Problemen aufgrund von Konfigurationsänderungen mit der Modulfunktion "Project Jigsaw". Als Referenz bin ich ein wenig gestolpert. Das von Oracle herausgegebene Java 9-Migrationshandbuch ist ein Muss.
--Gradle funktioniert nicht
Ältere Gradles geben den Fehler "Java-Version konnte nicht ermittelt werden von" aus. https://qiita.com/Kaoru_Yamamoto/items/dcb3815795d6e752cff3
Einige der internen APIs von Java, die nicht von außen verwendet werden sollten, konnten bis zu Java 8 verwendet werden, sind jedoch jetzt eingeschränkt. Einschränkungen bedeuten, dass sie nicht mehr verfügbar sind oder Sie eine WARN-Warnung erhalten. [Gegenmaßnahme ①] (Grundlegende Unterstützung) Schreiben Sie die Quelle in eine alternative API um. [Gegenmaßnahme ②] (Temporäre Unterstützung) Fügen Sie die Java-Startoption "--add-exports (entsprechende API)" hinzu. [Gegenmaßnahme ③] (Temporäre Unterstützung) Fügen Sie die Java-Startoption "--add-opens (entsprechende API)" hinzu. Dies ist eine Option, wenn Sie die API mit Reflection betreiben.
Die vorläufige Unterstützung ist eine Übergangsmaßnahme und möglicherweise in zukünftigen Versionen nicht verfügbar. Daher müssen grundlegende Maßnahmen so bald wie möglich ergriffen werden.
https://blog.codefx.org/java/java-9-migration-guide/#Illegal-Access-To-Internal-APIs
Recommended Posts