Why am I getting a "Java class not found" error when starting deephaven-server?
I'm getting a crypticValueError: Java class 'io.deephaven.python.server.EmbeddedServer' not found error when trying to start the Deephaven server using the deephaven-server wheel. What's causing this?
The problem
You see an error like this when running deephaven server:
This cryptic error message typically indicates that you're using an incompatible Java version.
The solution
You must use Java 17 or later when running deephaven-server version 0.36.0 and above.
The Deephaven server wheel requires Java 17+ because:
- Jetty 12 (used by Deephaven) requires Java 17 or later.
- Jetty 11 reached end-of-life, prompting the upgrade.
How to Fix
-
Check your Java version:
-
Install Java 17 or later if needed:
On Ubuntu/Debian:
On macOS:
-
Ensure Java 17 is being used by your environment before starting the server:
Verify the active Java version:
If you have multiple Java versions installed, set
JAVA_HOMEto point to Java 17:On Linux/macOS:
On macOS with Homebrew:
On Windows (Command Prompt):
On Windows (PowerShell):
To make these changes permanent, add them to your shell configuration file (e.g.,
~/.bashrc,~/.zshrc, or~/.bash_profile).
Example Dockerfile
If you're using Docker, make sure to install the correct Java version:
Additional Notes
- The
deephaven-corewheel (for client-side use) does not require Java to be installed. - The
deephaven-serverwheel requires Java 17+ to be available in your environment. - When creating a
Serverinstance in Python (e.g.,from deephaven_server.server import Server), you must have Java 17+ installed and available.
Note
These FAQ pages contain answers to questions about Deephaven Community Core that our users have asked in our Community Slack. If you have a question that is not in our documentation, join our Community and we'll be happy to help!