[JAVA] Solution pour Apache Tomcat 8 ne démarre pas après le passage à OpenJDK 11

Aperçu

Jusqu'à présent, Apache Tomcat 8 fonctionnait sur Oracle JDK 8, mais il a été remplacé par OpenJDK 11 en raison de la prise en charge de la mise à niveau de la version JDK. Ensuite, le message d'erreur suivant a été affiché dans le journal Apache Tomcat et il n'a pas pu être démarré. J'ai eu du mal à corriger l'erreur, je vais donc décrire la solution.

[2018-10-16 02:18:51] [info]  ( prunsrv.c:1175) [ 3808] Starting service...
・ ・ ・(Abréviation)・ ・ ・
[2018-10-16 02:18:56] [error]( javajni.c:763 ) [ 3816] CreateJavaVM Failed
[2018-10-16 02:18:56] [error]( javajni.c:763 ) [ 3816]Le fichier spécifié est introuvable.
[2018-10-16 02:18:57] [debug]( javajni.c:1013) [ 3816] Java Worker thread finished : with status = 2
[2018-10-16 02:18:57] [error]( prunsrv.c:1232) [ 3808] Failed to start Java
[2018-10-16 02:18:57] [error]( prunsrv.c:1580) [ 3808] ServiceStart returned 4
[2018-10-16 02:18:57] [debug]( prunsrv.c:885 ) [ 3808] reportServiceStatusE: dwCurrentState = 1, dwWin32ExitCode = 1066, dwWaitHint = 0, dwServiceSpecificExitCode = 4
[2018-10-16 02:18:58] [info]  ( prunsrv.c:1645) [ 3780] Run service finished.
[2018-10-16 02:18:58] [info]  ( prunsrv.c:1814) [ 3780] Commons Daemon procrun finished
<JAVA_HOME>/lib/endorsed is not supported. Endorsed standards and standalone APIs
in modular form will be supported via the concept of upgradeable modules.
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

Solution

Si l'option JVM d'Apache Tomcat contient java.endorsed.dirs, Java ne démarrera pas dans JDK 9 et versions ultérieures. Par conséquent, s'il est inclus, la ligne doit être supprimée.

-Djava.endorsed.dirs=C:\Program Files\ApacheTomcat\endorsed

Dans l'environnement Windows, vous pouvez modifier l'option JVM d'Apache Tomcat à partir de la clé de registre suivante.

HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Apache Software Foundation\Procrun 2.0\Tomcat8\Parameters\Java\Options

De plus, veuillez noter qu'Apache Tomcat ne démarrera pas même si les conditions suivantes sont remplies.

Référence: https://docs.oracle.com/javase/jp/9/migrate/toc.htm

Recommended Posts

Solution pour Apache Tomcat 8 ne démarre pas après le passage à OpenJDK 11
Solution si les candidats d'achèvement Java disparaissent après la mise à jour vers Eclipse 2018-12
Solution de contournement pour GMO VPS (CentOS8.1) ne pouvant pas démarrer après la mise à jour de yum