orientechnologies/orientdb

NoClassDefFoundError GraalJSScriptEngine

Closed this issue · 2 comments

OrientDB Version: 3.2.32

Java Version: openjkd 22.0.2

OS: Windows 10

Expected behavior

Standalone server launched

Actual behavior

2024-08-02 16:39:36:850 INFO  Windows OS is detected, 262144 limit of open files will be set for the disk cache. [ONative]
2024-08-02 16:39:36:865 INFO  Loading configuration from: G:/orientdb-community-3.2.32/config/orientdb-server-config.xml... [OServerConfigurationLoaderXml]
2024-08-02 16:39:36:996 INFO  OrientDB Server v3.2.32 (build ${buildNumber}, branch UNKNOWN) is starting up... [OServer]Exception in thread "Thread-0" java.lang.NoClassDefFoundError: Could not initialize class com.oracle.truffle.js.scriptengine.GraalJSScriptEngine
        at com.oracle.truffle.js.scriptengine.GraalJSEngineFactory.getScriptEngine(GraalJSEngineFactory.java:196)

Steps to reproduce

Download orientdb-community-3.2.32.zip
Unzip to non-system disk (not C), run /bin/server.bat

Hi,

This is a know issue with JDK 22, the version of Graal that we include in the dist do not support the JDK 22, this can be solved upgrading in our side the Graal version, something that we have already done for the next major version (we do not have a release date yet), for the 3.2.x version though we cannot update Graal, because the version that is compatible with JDK 22 is not compatible with JDK 8 that is the minimum compatible JDK for 3.2.x series.

So the only solution for 3.2.x is if you want to use the Graal script engine is to run with up to JDK 21.
If you are not using the script engine, the rest of OrientDB should work OK on JDK 22.

Regards