TCP Locator kan inte startas på grund av att Java-versionen inte matchar i AEM
När du installerar Adobe Experience Manager (AEM) Forms, v6.5 SP23 i en klustermiljö, startar inte TCP-positioneraren (Transmission Control Protocol) eftersom JDK (Java Development Kit) krävs 17 eller senare efter programfixen SP22, medan andra komponenter, som JBoss och AEM Forms, använder JDK 11. Lös problemet genom att ange JAVA_HOME till JDK 17 innan du startar TCP Locator.
Beskrivning description
Miljö
- Produkt: Adobe Experience Manager (AEM) - Forms, v6.5 SP23
- Instans: Klustermiljö
Problem/symtom
-
Det går inte att starta TCP-positioneraren med
gfsh.bati en klustrad miljö. -
Felet indikerar att en klass kompilerades av en nyare Java-körningsmiljö (klassfilsversion 61.0), men endast upp till version 5.0 kan identifieras.
-
Om du kör
java -versionbekräftas att JDK 11 används i stället för JDK 17. -
Följande fel visas vid start:
code language-none Exception in thread "main" java.lang.UnsupportedClassVersionError: org/springframework/util/Assert has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 55.0 at java.base/java.lang.ClassLoader.defineClass1(Native Method) at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1021) at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:174) at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:800) at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(BuiltinClassLoader.java:698) at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:621) at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:579) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526) at org.springframework.shell.support.logging.HandlerUtils.getLogger(HandlerUtils.java:49) at org.springframework.shell.core.SimpleParser.<clinit>(SimpleParser.java:54) at org.apache.geode.management.internal.cli.Launcher.<clinit>(Launcher.java:84)
Upplösning resolution
Följ de här stegen för att lösa problemet:
- Installera JDK 17 i systemet om det inte redan är installerat.
- Innan du startar TCP Locator anger du installationskatalogen
JAVA_HOMEför som. - Starta TCP Locator-processen.
- När du har startat TCP-positioneraren återställer du
JAVA_HOMEtill JDK 11 för programservern (till exempel JBoss) och AEM Forms. - Starta programservern och AEM Forms med de Java-versioner de behöver.
- Kontrollera att TCP Locator och alla tjänster startar utan Java-kompatibilitetsfel.
Anteckningar:
- JDK 17 krävs för TCP Locator efter SP22-snabbkorrigering i klustrade miljöer på grund av sårbarhetskorrigeringar för Spring Core.
- Varje komponent måste börja med sin kompatibla Java-version genom att uppdatera
JAVA_HOMEvid körning.
Relaterad läsning
Plattformar som stöds för AEM Forms på JEE i användarhandboken för AEM