- Newest
- Most votes
- Most comments
Resolved by installing Mandrel JDK 21 for macOS manually outside of SDKMAN. The version of Mandrel that SDKMAN is installing appears to be different than the macOS tarball version from the mandrel GitHub releases page. The SDKMAN installed version is missing the macOS specific things like Contents/Info.plist, MacOS, and _CodeSignature directories.
What a hassle but at least DynamoDB Local is able to start via the GUI with a manually installed Mandrel JDK 21. If I can get around to it, I will open a bug on the SDKMAN repo because I'd expect their installer to handle this config.
Steps to fix by manually setting up Mandrel JDK 21:
- Find the desired version of Mandrel JDK from the GitHub releases page: https://github.com/graalvm/mandrel/releases
- Copy the download link to your clipboard for the version you want to install. Ensure you're downloading the correct tarball for your system (the one with "-macos-aarch64-*").
- Use curl -OL <GitHub Download Link> to download the tarball to avoid the Apple Quarantine extended attribute from being placed on the JDK contents. Expand the tarball with "tar xf <filename>".
- Move the JDK somewhere on your PATH. Example ~/bin -> "mv mandrel-java21-23.1.6.0.Final ~/bin". Update environment args to pick up the JDK install
export JAVA_HOME="/Users/user/bin/mandrel-java-21-23.1.6.0.Final/Contents/Home"
export PATH=$PATH:"$JAVA_HOME/bin"
- Update the system link in /Library/Java to point to where the mandrel JDK is placed. Confirm via "java -version" that the JDK is being properly registered. If you downloaded the tarball via a browser, then quarantine xattr will block execution (pain to manually remove, so use curl to download to prevent this).
/Library/Java/JavaVirtualMachines/jdk -> /Users/user/bin/mandrel-java-21-23.1.6.0.Final
- Quit and re-launch NoSQL Workbench and DDB Local should start up just fine with the Mandrel JDK 21 no fuss
The above answer seems to be AI barf. Setting up shell variables for a gui app and deeplinking to whatever - if you're like me and you just want the app to work and don't care about what java is installed I suggest using amazon''s java installer here https://docs.aws.amazon.com/corretto/latest/corretto-17-ug/downloads-list.html and just click-click go have it working.
The issue you're experiencing is likely due to NoSQL Workbench not being able to locate the Java Runtime Environment (JRE) installed via SDKMAN. NoSQL Workbench requires JRE version 11.x or newer to run DynamoDB local, and it seems it's not detecting your Mandrel JDK 21 installation.
To resolve this, you can try the following steps:
-
Ensure that your JAVA_HOME environment variable is correctly set and visible to all applications, not just terminal sessions. You can do this by adding it to your ~/.bash_profile or ~/.zshrc file (depending on your shell):
export JAVA_HOME=/Users/whoami/.sdkman/candidates/java/current
-
Make sure the PATH environment variable includes the bin directory of your JDK:
export PATH=$JAVA_HOME/bin:$PATH
-
After making these changes, restart your terminal and NoSQL Workbench to ensure the new environment variables are loaded.
-
If the issue persists, you may need to create a symbolic link to your JDK in a location that NoSQL Workbench checks by default. Try creating a symlink in /Library/Java/JavaVirtualMachines/:
sudo ln -s /Users/whoami/.sdkman/candidates/java/current /Library/Java/JavaVirtualMachines/sdkman-jdk
-
If none of the above steps work, you might need to install a separate JDK using a method that NoSQL Workbench recognizes more easily, such as using the official Oracle JDK installer or using Homebrew.
Remember that NoSQL Workbench includes DynamoDB local as an optional part of the installation process, so ensuring it can find a compatible JRE is crucial for the GUI toggle to work properly.
If you continue to face issues after trying these steps, you may want to consider reaching out to AWS support for further assistance, as there might be a specific issue with how NoSQL Workbench is searching for the JRE on your system.
Sources
Download NoSQL Workbench for DynamoDB - Amazon DynamoDB
NoSQL Workbench for DynamoDB - Amazon DynamoDB
Accessing DynamoDB - Amazon DynamoDB
Relevant content
- asked 5 months ago
- AWS OFFICIALUpdated 4 months ago

Hello AI agent - steps 1 through 4 were tried and no success was had. I'd prefer to use SDKMAN installed JDKs to prevent needing to install directly into /Library/Java/JavaVirtualMachines.
Hopefully this is a minor config issue that could be corrected on a new version and/or via a configuration property in preferences.json.