En raison des changements dans le cycle de publication d'Oracle et des changements dans le format de support de licence, je pense que la communauté Java est occupée avec le support ces jours-ci. Le support payant est difficile en termes de coût, et il existe de nombreux cas où le cycle de publication est aussi court que six mois, il semble donc qu'Adopt OpenJDK soit l'un des principaux candidats en option. J'ai essayé de l'explorer et de l'introduire, je vais donc le résumer ici.
** Supplément. Au début, j'avais l'intention de changer l'article en AdoptOpenJDK 11. J'écrivais cet article lors de la mise à niveau de la version de l'application, mais en chemin, j'ai découvert que la bibliothèque principale ne prend pas en charge Java 9 ou une version ultérieure. Je vais l'essayer à une autre occasion pour compléter l'article, mais d'ici là, je ne peux écrire que sur AdoptOpenJDK Java9. ** **
from Java:Oracle Java 8 to java:AdoptOpenJDK9 OS:Windows 64bit、Linux(CentOS)64bit
Télécharger depuis AdoptOpenJDK. La dernière page de publication ne peut être créée que pour une seule plate-forme, je pense donc qu'il est préférable de la sélectionner individuellement dans la page d'archive ci-dessous. https://adoptopenjdk.net/archive.html
Il n'est pas fourni avec un programme d'installation comme Oracle java. La méthode d'installation officielle est brièvement expliquée ci-dessous, mais elle est un peu subtile (sans utiliser JAVA_HOME), je vais donc la changer un peu. https://adoptopenjdk.net/installation.html?variant=openjdk8&jvmVariant=hotspot
Java8 D'abord à partir de Java 8. En principe, le Java d'origine est 8, il devrait donc fonctionner sans problème.
Bien qu'il soit limité à l'environnement UNIX, il est facile d'oublier de modifier la valeur de paramétrage de securerandom.source, alors notez-le ici. Le paramètre initial pour la génération de nombres aléatoires est "/ dev / random", mais il n'a pas besoin d'être aussi strict, et le délai dû à l'épuisement des nombres aléatoires est plus problématique, j'ai donc changé le paramètre en "/ dev / urandom". Je pense qu'il existe de nombreux environnements. Dans un tel environnement, il est nécessaire de ne pas oublier de modifier les paramètres après avoir installé le JDK Adopt Open ainsi que les paramètres existants. N'oubliez pas de modifier les paramètres pour ** chaque version **. Pour plus d'informations sur la modification des paramètres, cliquez ici: http://otndnld.oracle.co.jp/document/products/E13153_01/wlcp/wlss40/configwlss/jvmrand.html
Java9 Onimon pose un certain nombre de problèmes dus aux changements de configuration à l'aide de la fonction de module "Project Jigsaw". Pour référence, j'ai un peu trébuché. Le [Guide de migration Java 9] publié par Oracle (https://docs.oracle.com/javase/jp/9/migrate/toc.htm#JSMIG-GUID-7744EF96-5899-4FB2-B34E-86D49B2E89B6) est une lecture incontournable.
--Gradle ne fonctionne pas
Les anciens Gradles donnent l'erreur "Impossible de déterminer la version Java à partir de". https://qiita.com/Kaoru_Yamamoto/items/dcb3815795d6e752cff3
Certaines API internes de Java qui n'étaient pas censées être utilisées de l'extérieur pourraient être utilisées jusqu'à Java 8, mais elles sont désormais limitées. Les limites signifient qu'elles ne sont plus disponibles ou que vous recevez un avertissement WARN. [Contre-mesure ①] (Support fondamental) Réécrivez la source vers une API alternative. [Contre-mesure ②] (Support temporaire) Ajout de l'option de démarrage Java "--add-exports (API correspondante)". [Contre-mesure ③] (Support temporaire) Ajouter l'option de démarrage Java "--add-opens (API correspondante)". Ceci est une option si vous utilisez l'API avec réflexion.
Le soutien provisoire est une mesure transitoire et peut ne pas être disponible dans les versions futures, il est donc nécessaire de prendre des mesures fondamentales dès que possible.
https://blog.codefx.org/java/java-9-migration-guide/#Illegal-Access-To-Internal-APIs
Recommended Posts