Java Installation
Use this page when you need the NVIDIA cuVS Java API. The Java API uses Panama bindings and requires matching native cuVS libraries at runtime.
All NVIDIA cuVS routine implementations live in the C++ core. The Java bindings call into the native C and C++ libraries, so install both libcuvs_c and libcuvs.
Install Native Dependencies
Install the native C and C++ libraries first. For most users, conda is the simplest option:
If you use locally built native libraries, make sure the directory containing libcuvs.so and libcuvs_c.so is on LD_LIBRARY_PATH.
Java development also requires:
- Maven 3.9.6 or newer.
- JDK 22.
- jextract for JDK 22. If it is not already installed, the build script downloads it.
Build From Source
Before building from source, review the shared C++ source-build prerequisites, including the recommended conda environment setup for build dependencies.
Build the native libraries and Java API from the repository root:
If matching native libraries are already built and installed, build only the Java API:
You can also build from the java directory:
Run Java integration tests from the java directory:
Run a focused test suite from java/cuvs-java:
If the C headers used by Java change, regenerate the Panama bindings: