Environnement
Problèmes/symptômes
Cas pratique - Un problème a été signalé lors du remplacement du JDK Oracle par le JDK Open sur les instances Campaign s’exécutant sous Windows.
Le client dispose actuellement du JDK Oracle v1.8.0.191 installé sur toutes les instances Windows Campaign. Cependant, après avoir remplacé le JDK Oracle par Open JDK dans l’une de leurs instances Campaign, le WEB n’a pas pu démarrer avec l’erreur suivante :
JVM-510037 Cannot find the Java dynamic library. Check that a JDK or a JRE is installed on the machine. (iRc=-53)
Toutefois, Java est correctement installé avec les variables d’environnement Path et JAVA_HOME appropriées.
Pour exécuter le module Web, la bibliothèque dynamique JVM doit être visible dans Campaign. En supprimant le JDK Oracle, la clé JavaSoft du registre Windows est supprimée et toutes les références à cette bibliothèque JVM sont également perdues.
Il existe deux solutions pour résoudre ce problème :
Tout d’abord, vous pouvez ajouter manuellement la clé JavaSoft au registre Windows sous Ordinateur\HKEY_LOCAL_MACHINE\LOGICIEL.
Voici un exemple (avec OpenJDK 1.8_292
) de ce que vous devez ajouter :
Windows Registry Editor Version 5.00
HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft
HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment"CurrentVersion"="1.8""BrowserJavaVersion"="11.301.2"
HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.8"MicroVersion"="0""RuntimeLib"="C:\\Users\\perth\\Java\\openjdk-8u292-b10\\jre\\bin\\server\\jvm.dll""JavaHome"="C:\\Users\\perth\\Java\\openjdk-8u292-b10\\jre"
HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.8.0_292"MicroVersion"="0""RuntimeLib"="C:\\Users\\perth\\Java\\openjdk-8u292-b10\\jre\\bin\\server\\jvm.dll""JavaHome"="C:\\Users\\perth\\Java\\openjdk-8u292-b10\\jre"
Le dossier de chemin d’accès suivant a été ajouté à la variable Chemin Variable d’environnement.
C:\Users\perth\Java\openjdk-8u292-b10\bin
Le module Web doit pouvoir démarrer comme prévu :
Deuxièmement, l’utilisation de deux variables d’environnement Windows peut être définie pour indiquer où le fichier jvm.dll peut être trouvé par le module Web.
Les variables sont les suivantes :
Voici un exemple :
Notez que l’utilisation de JVMLIBDIR sera visible à partir du journal si la journalisation en mode verbeux est activée dans le module Web.