ACC v7-Fehler: „JVM-510037 kann die dynamische Java-Bibliothek nicht finden.“
Es gibt zwei Lösungen: Sie können entweder den JavaSoft-Schlüssel manuell zur Windows-Registrierung unter Computer\HKEY_LOCAL_MACHINE\SOFTWARE hinzufügen, oder Sie können zwei Windows-Umgebungsvariablen verwenden, die definiert werden können, um anzugeben, wo die jvm.dll-Datei vom Web-Modul gefunden werden kann.
Beschreibung description
Umgebung
Adobe Campaign Classic v7 (ACC v7)
Probleme/Symptome
Anwendungsfall: Dieses Problem trat auf, als das Oracle-JDK in Campaign-Instanzen, die unter Windows ausgeführt werden, durch das Open-JDK ersetzt wurde.
Im Beispielfall war Oracle JDK v1.8.0.191 auf allen Windows Campaign-Instanzen installiert. Nach dem Ersetzen von Oracle JDK durch Open JDK in einer der Campaign-Instanzen konnte das WEB nicht gestartet werden und gab den folgenden Fehler aus:
JVM-510037 Cannot find the Java dynamic library. Check that a JDK or a JRE is installed on the machine. (iRc=-53)
Java wird jedoch korrekt mit den Umgebungsvariablen Path und JAVA_HOME installiert.
Auflösung resolution
Um das Web-Modul ausführen zu können, muss die dynamische JVM-Bibliothek für Campaign sichtbar sein. Durch das Entfernen des Oracle-JDK wird der JavaSoft-Schlüssel aus der Windows-Registrierung entfernt, und alle Verweise auf diese JVM-Bibliothek gehen ebenfalls verloren.
Es gibt zwei Lösungen, um dieses Problem zu beheben:
#1
Sie können den JavaSoft-Schlüssel manuell zur Windows-Registrierung unter Computer\HKEY_LOCAL_MACHINE\SOFTWARE hinzufügen.
Im Folgenden finden Sie ein Beispiel (mit OpenJDK 1.8_292) dafür, was Sie hinzufügen müssen:
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"
Der folgende Pfadordner wurde der Umgebungsvariablen Path hinzugefügt.
C:\Users\perth\Java\openjdk-8u292-b10\bin
Das Web-Modul sollte erwartungsgemäß starten können:
#2
Die Verwendung von zwei Windows-Umgebungsvariablen kann definiert werden, um anzugeben, wo sich die jvm.dll-Datei im Web-Modul befindet.
Die Variablen sind:
USEENV=1JVMLIBDIR=<the path of the jvm.dll file>
Hier ein Beispiel:
Beachten Sie, dass die Verwendung der JVMLIBDIR im Protokoll angezeigt wird, wenn die ausführliche Protokollierung im Web-Modul aktiviert ist.