diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 6b33bc1bd2ac6bfaaf30ac2522d5deb65d0ea857..cd4b7d8e0d5a9a06c04f372e94f55a470bdb8420 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -255,7 +255,7 @@ fedora39-java8:build:
     # The Java build extends the build time considerably.
     timeout: 4 hours
     variables:
-      VTK_JAVA_VERSION: 1.8
+      VTK_JAVA_VERSION: 8
     needs: []
 
 fedora39-java11:build:
@@ -2111,7 +2111,7 @@ macos-x86_64-java8:build:
         - .cmake_build_artifacts
         - .weekly_upload_only
     variables:
-      VTK_JAVA_VERSION: 1.8
+      VTK_JAVA_VERSION: 8
     timeout: 4 hours
     needs: []
 
@@ -2135,7 +2135,7 @@ macos-arm64-java8:build:
         - .cmake_build_artifacts
         - .weekly_upload_only
     variables:
-      VTK_JAVA_VERSION: 1.8
+      VTK_JAVA_VERSION: 8
     timeout: 4 hours
     needs: []
 
@@ -2159,7 +2159,7 @@ windows-x86_64-java8:build:
         - .cmake_build_artifacts
         - .weekly_upload_only
     variables:
-      VTK_JAVA_VERSION: 1.8
+      VTK_JAVA_VERSION: 8
     timeout: 4 hours
     needs: []
 
diff --git a/.gitlab/ci/configure_fedora39_java.cmake b/.gitlab/ci/configure_fedora39_java.cmake
index b0c65056f4d7e8edf05f551df8f19c8566a6ad55..641b75812dc625c3e9aa50f06ebd0bb1daefdb27 100644
--- a/.gitlab/ci/configure_fedora39_java.cmake
+++ b/.gitlab/ci/configure_fedora39_java.cmake
@@ -1,5 +1,4 @@
-set(VTK_JAVA_SOURCE_VERSION $ENV{VTK_JAVA_VERSION} CACHE STRING "" FORCE)
-set(VTK_JAVA_TARGET_VERSION $ENV{VTK_JAVA_VERSION} CACHE STRING "" FORCE)
+set(VTK_JAVA_RELEASE_VERSION $ENV{VTK_JAVA_VERSION} CACHE STRING "" FORCE)
 
 include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora39.cmake")
 
diff --git a/.gitlab/ci/configure_macos_arm64_java.cmake b/.gitlab/ci/configure_macos_arm64_java.cmake
index f590c264b30a25a876ed7e8bde1e4eb2232cb846..2e2f3c4cd8af8ffd25934ff4525f063b73b02697 100644
--- a/.gitlab/ci/configure_macos_arm64_java.cmake
+++ b/.gitlab/ci/configure_macos_arm64_java.cmake
@@ -1,5 +1,4 @@
-set(VTK_JAVA_SOURCE_VERSION $ENV{VTK_JAVA_VERSION} CACHE STRING "" FORCE)
-set(VTK_JAVA_TARGET_VERSION $ENV{VTK_JAVA_VERSION} CACHE STRING "" FORCE)
+set(VTK_JAVA_RELEASE_VERSION $ENV{VTK_JAVA_VERSION} CACHE STRING "" FORCE)
 
 include("${CMAKE_CURRENT_LIST_DIR}/configure_macos.cmake")
 
diff --git a/.gitlab/ci/configure_macos_x86_64_java.cmake b/.gitlab/ci/configure_macos_x86_64_java.cmake
index ff5e7ca4f30112a137c95ce316a0d8ffa5e6e444..517869c5a2802c5046d69b5e1b251f98a87886a2 100644
--- a/.gitlab/ci/configure_macos_x86_64_java.cmake
+++ b/.gitlab/ci/configure_macos_x86_64_java.cmake
@@ -1,5 +1,4 @@
-set(VTK_JAVA_SOURCE_VERSION $ENV{VTK_JAVA_VERSION} CACHE STRING "" FORCE)
-set(VTK_JAVA_TARGET_VERSION $ENV{VTK_JAVA_VERSION} CACHE STRING "" FORCE)
+set(VTK_JAVA_RELEASE_VERSION $ENV{VTK_JAVA_VERSION} CACHE STRING "" FORCE)
 
 include("${CMAKE_CURRENT_LIST_DIR}/configure_macos.cmake")
 
diff --git a/.gitlab/ci/configure_options.cmake b/.gitlab/ci/configure_options.cmake
index e22b63f60e0eff28f4128207400455e614a07435..fd228e78d49982629ca6382b0c663b92a0ed55db 100644
--- a/.gitlab/ci/configure_options.cmake
+++ b/.gitlab/ci/configure_options.cmake
@@ -44,7 +44,7 @@ configuration_flag(VTK_WRAP_PYTHON "python")
 
 # java
 configuration_flag(VTK_WRAP_JAVA "java")
-configuration_flag(VTK_JAVA_INSTALL "java")
+configuration_flag(VTK_BUILD_MAVEN_PKG "java")
 
 if ("$ENV{CMAKE_CONFIGURATION}" MATCHES "java")
   set(BUILD_TESTING OFF CACHE BOOL "" FORCE)
@@ -52,7 +52,7 @@ if ("$ENV{CMAKE_CONFIGURATION}" MATCHES "java")
   # Naming is <arch-platform> since some maven versions fail to properly parse
   # the artifact name when numbers are trailing in the classifer name.
   set(MAVEN_NATIVE_ARTIFACTS "darwin-amd;darwin-arm;linux-amd;windows-amd" CACHE STRING "" FORCE)
-  set(MAVEN_VTK_ARTIFACT_SUFFIX "-java${VTK_JAVA_TARGET_VERSION}" CACHE STRING "")
+  set(MAVEN_VTK_ARTIFACT_SUFFIX "-java${VTK_JAVA_RELEASE_VERSION}" CACHE STRING "")
   # Disable snapshots for tag releases and also when the env variable
   # VTK_JAVA_FORCE_RELEASE is defined through the Gitlab schedule pipeline UI.
   # Note that VTK_JAVA_FORCE_RELEASE is used to create/override VTK java
diff --git a/.gitlab/ci/configure_windows_vs2022_java.cmake b/.gitlab/ci/configure_windows_vs2022_java.cmake
index f68bfb2126d6ffaf998936c6cd20e1edfeb86e11..782f87294c7e7b2d23467f04c652587ec47955f7 100644
--- a/.gitlab/ci/configure_windows_vs2022_java.cmake
+++ b/.gitlab/ci/configure_windows_vs2022_java.cmake
@@ -1,5 +1,4 @@
-set(VTK_JAVA_SOURCE_VERSION $ENV{VTK_JAVA_VERSION} CACHE STRING "" FORCE)
-set(VTK_JAVA_TARGET_VERSION $ENV{VTK_JAVA_VERSION} CACHE STRING "" FORCE)
+set(VTK_JAVA_RELEASE_VERSION $ENV{VTK_JAVA_VERSION} CACHE STRING "" FORCE)
 
 set(VTK_MODULE_ENABLE_VTK_vtkvtkm NO CACHE STRING "") # Java Wrap errors in windows
 
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 964e18bd36614c33a4e8ce33053993e61a051648..ba9766d83c018e9596c4c0eb8ee8541596561404 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -711,8 +711,15 @@ if (VTK_WRAP_PYTHON)
 endif ()
 
 if (VTK_WRAP_JAVA)
-  enable_language(Java)
+  find_package(Java 11 REQUIRED COMPONENTS Development)
+
+  # We need to set CMAKE_Java variables before enable_language to
+  # retain specified JDK in ENV{JAVA_HOME}.
+  set(CMAKE_Java_ARCHIVE ${Java_JAR_EXECUTABLE})
+  set(CMAKE_Java_COMPILER ${Java_JAVAC_EXECUTABLE})
+  set(CMAKE_Java_RUNTIME ${Java_JAVA_EXECUTABLE})
 
+  enable_language(Java)
   add_subdirectory(Wrapping/Java)
 endif ()
 
diff --git a/Documentation/docs/build_instructions/build_settings.md b/Documentation/docs/build_instructions/build_settings.md
index a05b63d786143be340aca79af56e1ed625327623..23929d36e566c9350f855bcafa1d2f41de095229 100644
--- a/Documentation/docs/build_instructions/build_settings.md
+++ b/Documentation/docs/build_instructions/build_settings.md
@@ -31,9 +31,11 @@ Less common, but variables which may be of interest to some:
     available or not.
   * `VTK_WRAP_JAVA` (default `OFF`; requires `VTK_ENABLE_WRAPPING`):
     Whether Java support will be available or not.
+  * `VTK_JAVA_RELEASE_VERSION` (default `8`; requires `VTK_WRAP_JAVA`):
+    The version of Java in which VTK's Java wrapping will be built for.
   * `VTK_WRAP_SERIALIZATION` (default `OFF`; requires `VTK_ENABLE_WRAPPING`):
     Whether serialization code will be auto generated or not.
-  * `VTK_JAVA_INSTALL` (default `OFF`; requires `VTK_WRAP_JAVA`):
+  * `VTK_BUILD_MAVEN_PKG` (default `OFF`; requires `VTK_WRAP_JAVA`):
     Whether to build the Java Maven package for VTK.
   * `VTK_SMP_IMPLEMENTATION_TYPE` (default `Sequential`): Set which SMPTools
     will be implemented by default. Must be either `Sequential`, `STDThread`,
diff --git a/Documentation/release/dev/change-java-build-flags.md b/Documentation/release/dev/change-java-build-flags.md
new file mode 100644
index 0000000000000000000000000000000000000000..25ed8543a59b7fff074c4596d233aa0ce13de640
--- /dev/null
+++ b/Documentation/release/dev/change-java-build-flags.md
@@ -0,0 +1,9 @@
+# Change Java build flags
+
+We superseded `VTK_JAVA_SOURCE_VERSION` and `VTK_JAVA_TARGET_VERSION` cmake
+flags by `VTK_JAVA_RELEASE_VERSION` which has the effect of the two former
+flags when having the same value.
+
+This was added in newer JDK javac versions which now provide the `-release`
+flags which simplifies its usage by avoiding having to add other flags such
+as `--boot-class-path/-source/-release`.
diff --git a/Wrapping/Java/CMakeLists.txt b/Wrapping/Java/CMakeLists.txt
index ef8d1a36ba4eadc9368bd45d714d23d0c20c09c6..2e494e01352af0cad23f6a2f772d2d8ad4078aa8 100644
--- a/Wrapping/Java/CMakeLists.txt
+++ b/Wrapping/Java/CMakeLists.txt
@@ -24,8 +24,7 @@ vtk_module_wrap_java(
   # Update vtkSettings.java.in if this changes.
   JNILIB_DESTINATION  "${CMAKE_INSTALL_JNILIBDIR}")
 
-# TODO: Make FindJava.cmake use imported targets.
-find_package(Java REQUIRED COMPONENTS Development)
+# Needed for FindJOGL.cmake
 include(UseJava)
 
 option(VTK_JAVA_SWT_COMPONENT "Enable the SWT component for Java" OFF)
@@ -206,16 +205,11 @@ foreach (java_file IN LISTS java_configure_sources)
 endforeach ()
 
 # Set the javac source version
-set(VTK_JAVA_SOURCE_VERSION "<DEFAULT>" CACHE STRING "javac source version")
-mark_as_advanced(VTK_JAVA_SOURCE_VERSION)
-set(VTK_JAVA_TARGET_VERSION "<DEFAULT>" CACHE STRING "javac target version")
-mark_as_advanced(VTK_JAVA_TARGET_VERSION)
+set(VTK_JAVA_RELEASE_VERSION "<DEFAULT>" CACHE STRING "javac release version")
+mark_as_advanced(VTK_JAVA_RELEASE_VERSION)
 
-if (VTK_JAVA_SOURCE_VERSION STREQUAL "<DEFAULT>")
-  set(VTK_JAVA_SOURCE_VERSION "1.7")
-endif ()
-if (VTK_JAVA_TARGET_VERSION STREQUAL "<DEFAULT>")
-  set(VTK_JAVA_TARGET_VERSION "1.7")
+if (VTK_JAVA_RELEASE_VERSION STREQUAL "<DEFAULT>")
+  set(VTK_JAVA_RELEASE_VERSION "8")
 endif ()
 
 set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_JARDIR}")
@@ -255,8 +249,7 @@ target_compile_options(vtkjava
   PRIVATE
     # TODO(java): Why does adding this to the include directories not work?
     "SHELL:-classpath \"${java_classpath}\""
-    "SHELL:-source ${VTK_JAVA_SOURCE_VERSION}"
-    "SHELL:-target ${VTK_JAVA_TARGET_VERSION}")
+    "SHELL:--release ${VTK_JAVA_RELEASE_VERSION}")
 target_link_libraries(vtkjava
   PRIVATE
     $<$<BOOL:${VTK_JAVA_SWT_COMPONENT}>:${SWT_ECLIPSE_LIBRARIES}>
@@ -295,9 +288,9 @@ if (NOT VTK_ABI_NAMESPACE_NAME STREQUAL "<DEFAULT>" AND NOT DEFINED ENV{CI})
 endif ()
 
 # Add the option to package VTK for custom Java packaging
-option(VTK_JAVA_INSTALL "Use the Java rules to build the native libraries." OFF)
+option(VTK_BUILD_MAVEN_PKG "Use the Java rules to build the native libraries." OFF)
 
-if (VTK_JAVA_INSTALL)
+if (VTK_BUILD_MAVEN_PKG)
   # Make sure we embed the runtime libraries when packaging the Java binaries
   if (WIN32)
     # install system runtimes.
@@ -328,7 +321,7 @@ if (VTK_JAVA_INSTALL)
   endif ()
 
   mark_as_advanced(
-    VTK_JAVA_INSTALL
+    VTK_BUILD_MAVEN_PKG
     MAVEN_LOCAL_REPOSITORY
     MAVEN_NATIVE_ARTIFACTS
     MAVEN_LOCAL_NATIVE_NAME
@@ -401,7 +394,7 @@ endif()
 # Post-Install script for Custom Java Packaging
 # This install rule MUST stay at the bottom of that CMakeLists file as
 # it has to be the last install rule that get executed
-if(VTK_JAVA_INSTALL)
+if(VTK_BUILD_MAVEN_PKG)
   set(MAVEN_NATIVE_ARTIFACT_XML)
   foreach(native_name ${MAVEN_NATIVE_ARTIFACTS})
     string(APPEND MAVEN_NATIVE_ARTIFACT_XML
diff --git a/Wrapping/Java/README.md b/Wrapping/Java/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..422fc47ab4381ec9558662a54ed468c6b290163c
--- /dev/null
+++ b/Wrapping/Java/README.md
@@ -0,0 +1,57 @@
+# Java instructions
+
+## Building
+
+In order to build the JOGL rendering classes, you will need to have JOGL
+libraries installed on your system. For that you can use Maven to download
+for you the proper JARs.
+
+List of possible classifiers:
+
+ - natives-android-aarch64
+ - natives-android-armv6
+ - natives-linux-amd64
+ - natives-linux-armv6
+ - natives-linux-armv6hf
+ - natives-linux-i586
+ - natives-macosx-universal
+ - natives-solaris-amd64
+ - natives-solaris-i586
+ - natives-windows-amd64
+ - natives-windows-i586
+
+
+For that you can run the following command lines:
+
+```
+mvn org.apache.maven.plugins:maven-dependency-plugin:2.8:get \
+  -DrepoUrl=http://download.java.net/maven/2/  \
+  -Dartifact=org.jogamp.gluegen:gluegen-rt:2.3.2
+
+mvn org.apache.maven.plugins:maven-dependency-plugin:2.8:get \
+  -DrepoUrl=http://download.java.net/maven/2/  \
+  -Dartifact=org.jogamp.gluegen:gluegen-rt:2.3.2:jar:CLASSIFIER
+
+mvn org.apache.maven.plugins:maven-dependency-plugin:2.8:get \
+  -DrepoUrl=http://download.java.net/maven/2/  \
+  -Dartifact=org.jogamp.jogl:jogl-all:2.3.2
+
+mvn org.apache.maven.plugins:maven-dependency-plugin:2.8:get \
+  -DrepoUrl=http://download.java.net/maven/2/  \
+  -Dartifact=org.jogamp.jogl:jogl-all:2.3.2:jar:CLASSIFIER
+
+cmake --build build --source vtk-source \
+  -DVTK_WRAP_JAVA=ON \
+  -DVTK_JAVA_JOGL_COMPONENT=ON \
+  -DJOGL_VERSION="2.3.2" \
+  -DJOGL_GLUE=$HOME/.m2/repository/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2.jar \
+  -DJOGL_LIB=$HOME/.m2/repository/org/jogamp/jogl/jogl-all/2.3.2/jogl-all-2.3.2.jar
+
+# Substitute $INSTALLDIR
+cmake --install build --prefix $INSTALLDIR
+```
+
+## Demonstration
+```
+java -cp $INSTALLDIR/vtk-XY.jar:/home/kitware/.m2/repository/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2.jar:/home/kitware/.m2/repository/org/jogamp/jogl/jogl-all/2.3.2/jogl-all-2.3.2.jar -Djava.library.path=$INSTALLDIR/natives-Linux-64bit vtk.sample.Demo
+```
diff --git a/Wrapping/Java/README.txt b/Wrapping/Java/README.txt
deleted file mode 100644
index f834528629ed7bb50bbbcc769ddbf1e8c4049508..0000000000000000000000000000000000000000
--- a/Wrapping/Java/README.txt
+++ /dev/null
@@ -1,97 +0,0 @@
-In order to build the JOGL rendering classes, you will need to have JOGL
-libraries installed on your system. For that you can use Maven to download
-for you the proper JARs.
-
-List of possible classifiers:
-
- - natives-android-aarch64
- - natives-android-armv6
- - natives-linux-amd64
- - natives-linux-armv6
- - natives-linux-armv6hf
- - natives-linux-i586
- - natives-macosx-universal
- - natives-solaris-amd64
- - natives-solaris-i586
- - natives-windows-amd64
- - natives-windows-i586
-
-For that you can run the following command lines:
-
-$ mvn org.apache.maven.plugins:maven-dependency-plugin:2.8:get \
-    -DrepoUrl=http://download.java.net/maven/2/  \
-    -Dartifact=org.jogamp.gluegen:gluegen-rt:2.3.2
-
-$ mvn org.apache.maven.plugins:maven-dependency-plugin:2.8:get \
-    -DrepoUrl=http://download.java.net/maven/2/  \
-    -Dartifact=org.jogamp.gluegen:gluegen-rt:2.3.2:jar:CLASSIFIER
-
-
-$ mvn org.apache.maven.plugins:maven-dependency-plugin:2.8:get \
-    -DrepoUrl=http://download.java.net/maven/2/  \
-    -Dartifact=org.jogamp.jogl:jogl-all:2.3.2
-
-$ mvn org.apache.maven.plugins:maven-dependency-plugin:2.8:get \
-    -DrepoUrl=http://download.java.net/maven/2/  \
-    -Dartifact=org.jogamp.jogl:jogl-all:2.3.2:jar:CLASSIFIER
-
-
------------------
-   macOS build
------------------
-=> "/Users/seb" should be replaced with your HOME directory
-
-$ mkdir vtk-java
-$ cd vtk-java
-
-$ java
- ==> Follow direction to install java if missing
-$ brew install maven
-$ mvn org.apache.maven.plugins:maven-dependency-plugin:2.8:get -DrepoUrl=http://download.java.net/maven/2/ -Dartifact=org.jogamp.gluegen:gluegen-rt:2.3.2
-$ mvn org.apache.maven.plugins:maven-dependency-plugin:2.8:get -DrepoUrl=http://download.java.net/maven/2/ -Dartifact=org.jogamp.gluegen:gluegen-rt:2.3.2:jar:natives-macosx-universal
-$ mvn org.apache.maven.plugins:maven-dependency-plugin:2.8:get -DrepoUrl=http://download.java.net/maven/2/ -Dartifact=org.jogamp.jogl:jogl-all:2.3.2
-$ mvn org.apache.maven.plugins:maven-dependency-plugin:2.8:get -DrepoUrl=http://download.java.net/maven/2/ -Dartifact=org.jogamp.jogl:jogl-all:2.3.2:jar:natives-macosx-universal
-
-$ git clone https://gitlab.kitware.com/vtk/vtk-superbuild.git
-$ mkdir build-sb
-$ cd build-sb
-$ cmake -DUSE_VTK_MASTER:BOOL=ON -DBUILD_VTK7:BOOL=ON -DGENERATE_JAVA_PACKAGE:BOOL=ON -DENABLE_vtk:BOOL=ON -DCMAKE_OSX_DEPLOYMENT_TARGET:STRING=10.9 -DCMAKE_BUILD_TYPE:STRING=Release -DJAVA_AWT_INCLUDE_PATH:PATH=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/JavaVM.framework/Headers -DJAVA_AWT_LIBRARY:FILEPATH=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/JavaVM.framework -DJAVA_INCLUDE_PATH:PATH=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/JavaVM.framework/Headers -DJAVA_INCLUDE_PATH2:PATH=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/JavaVM.framework/Headers -DJAVA_JVM_LIBRARY:FILEPATH=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/JavaVM.framework -DJava_IDLJ_EXECUTABLE:FILEPATH=/Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home/bin/idlj -DJava_JARSIGNER_EXECUTABLE:FILEPATH=/Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home/bin/jarsigner -DJava_JAR_EXECUTABLE:FILEPATH=/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/jar -DJava_JAVAC_EXECUTABLE:FILEPATH=/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javac -DJava_JAVADOC_EXECUTABLE:FILEPATH=/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javadoc -DJava_JAVAH_EXECUTABLE:FILEPATH=/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javah -DJava_JAVA_EXECUTABLE:FILEPATH=/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java -DJOGL_GLUE:FILEPATH=/Users/seb/.m2/repository/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2.jar -DJOGL_LIB:FILEPATH=/Users/seb/.m2/repository/org/jogamp/jogl/jogl-all/2.3.2/jogl-all-2.3.2.jar -DVTK_JAVA_SOURCE_VERSION:STRING=1.8 -DVTK_JAVA_TARGET_VERSION:STRING=1.8 ../vtk-superbuild/
-$ make
-$ cd install
-$ java -cp vtk-7.1.jar:/Users/seb/.m2/repository/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2.jar:/Users/seb/.m2/repository/org/jogamp/jogl/jogl-all/2.3.2/jogl-all-2.3.2.jar -Djava.library.path=./natives-Darwin-64bit vtk.sample.rendering.JoglConeRendering
-
-
------------------
-   Linux build
------------------
-=> "/home/kitware" should be replaced with your HOME directory
-
-$ mkdir vtk-java
-$ cd vtk-java
-
-$ curl http://apache.cs.utah.edu/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz -O
-$ tar xvfz apache-maven-3.3.9-bin.tar.gz
-$ ./apache-maven-3.3.9/bin/mvn org.apache.maven.plugins:maven-dependency-plugin:2.8:get -DrepoUrl=http://download.java.net/maven/2/ -Dartifact=org.jogamp.gluegen:gluegen-rt:2.3.2
-$ ./apache-maven-3.3.9/bin/mvn org.apache.maven.plugins:maven-dependency-plugin:2.8:get -DrepoUrl=http://download.java.net/maven/2/ -Dartifact=org.jogamp.gluegen:gluegen-rt:2.3.2:jar:natives-linux-amd64
-$ ./apache-maven-3.3.9/bin/mvn org.apache.maven.plugins:maven-dependency-plugin:2.8:get -DrepoUrl=http://download.java.net/maven/2/ -Dartifact=org.jogamp.jogl:jogl-all:2.3.2
-$ ./apache-maven-3.3.9/bin/mvn org.apache.maven.plugins:maven-dependency-plugin:2.8:get -DrepoUrl=http://download.java.net/maven/2/ -Dartifact=org.jogamp.jogl:jogl-all:2.3.2:jar:natives-linux-amd64
-
-$ git clone https://gitlab.kitware.com/vtk/vtk-superbuild.git
-$ mkdir build-sb
-$ cd build-sb
-$ cmake -DUSE_VTK_MASTER:BOOL=ON -DBUILD_VTK7:BOOL=ON -DGENERATE_JAVA_PACKAGE:BOOL=ON -DENABLE_vtk:BOOL=ON -DCMAKE_BUILD_TYPE:STRING=Release -DVTK_JAVA_SOURCE_VERSION:STRING=1.8 -DVTK_JAVA_TARGET_VERSION:STRING=1.8 -DJAVA_AWT_INCLUDE_PATH:PATH=/usr/lib/jvm/java/include -DJAVA_AWT_LIBRARY:FILEPATH=/usr/lib/jvm/jre/lib/amd64/libjawt.so -DJAVA_INCLUDE_PATH:PATH=/usr/lib/jvm/java/include -DJAVA_INCLUDE_PATH2:PATH=/usr/lib/jvm/java/include/linux -DJAVA_JVM_LIBRARY:FILEPATH=/usr/lib/jvm/jre/lib/amd64/server/libjvm.so -DJava_IDLJ_EXECUTABLE:FILEPATH=/usr/bin/idlj -DJava_JARSIGNER_EXECUTABLE:FILEPATH=/usr/bin/jarsigner -DJava_JAR_EXECUTABLE:FILEPATH=/usr/bin/jar -DJava_JAVAC_EXECUTABLE:FILEPATH=/usr/bin/javac -DJava_JAVADOC_EXECUTABLE:FILEPATH=/usr/bin/javadoc -DJava_JAVAH_EXECUTABLE:FILEPATH=/usr/bin/javah -DJava_JAVA_EXECUTABLE:FILEPATH=/usr/bin/java -DJOGL_GLUE:FILEPATH=/home/kitware/.m2/repository/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2.jar -DJOGL_LIB:FILEPATH=/home/kitware/.m2/repository/org/jogamp/jogl/jogl-all/2.3.2/jogl-all-2.3.2.jar ../vtk-superbuild/
-
-$ make
-$ cd install
-$ java -cp vtk-7.1.jar:/home/kitware/.m2/repository/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2.jar:/home/kitware/.m2/repository/org/jogamp/jogl/jogl-all/2.3.2/jogl-all-2.3.2.jar -Djava.library.path=./natives-Linux-64bit vtk.sample.Demo
-
--------------------
-   Windows build
--------------------
-
-git clone https://gitlab.kitware.com/vtk/vtk-superbuild.git
-mkdir build-sb
-cd build-sb
-cmake  -DUSE_VTK_MASTER:BOOL=ON  -DBUILD_VTK7:BOOL=ON  -DGENERATE_JAVA_PACKAGE:BOOL=ON  -DENABLE_vtk:BOOL=ON  -DCMAKE_BUILD_TYPE:STRING=Release  -DVTK_JAVA_SOURCE_VERSION:STRING=1.8  -DVTK_JAVA_TARGET_VERSION:STRING=1.8  -DJAVA_AWT_INCLUDE_PATH:PATH=C:\Users\utkarsh\vtk-java\jdk1.8.0_121\include  -DJAVA_AWT_LIBRARY:FILEPATH=C:\Users\utkarsh\vtk-java\jdk1.8.0_121\jre\bin\jawt.dll  -DJAVA_INCLUDE_PATH:PATH=C:\Users\utkarsh\vtk-java\jdk1.8.0_121\include  -DJAVA_INCLUDE_PATH2:PATH=C:\Users\utkarsh\vtk-java\jdk1.8.0_121\include\win32  -DJAVA_JVM_LIBRARY:FILEPATH=C:\Users\utkarsh\vtk-java\jdk1.8.0_121\jre\bin\server\jvm.dll  -DJava_IDLJ_EXECUTABLE:FILEPATH=C:\Users\utkarsh\vtk-java\jdk1.8.0_121\bin\idlj.exe -DJava_JARSIGNER_EXECUTABLE:FILEPATH=C:\Users\utkarsh\vtk-java\jdk1.8.0_121\bin\jarsigner.exe -DJava_JAR_EXECUTABLE:FILEPATH=C:\Users\utkarsh\vtk-java\jdk1.8.0_121\bin\jar.exe -DJava_JAVAC_EXECUTABLE:FILEPATH=C:\Users\utkarsh\vtk-java\jdk1.8.0_121\bin\javac.exe -DJava_JAVADOC_EXECUTABLE:FILEPATH=C:\Users\utkarsh\vtk-java\jdk1.8.0_121\bin\javadoc.exe -DJava_JAVAH_EXECUTABLE:FILEPATH=C:\Users\utkarsh\vtk-java\jdk1.8.0_121\bin\javah.exe -DJava_JAVA_EXECUTABLE:FILEPATH=C:\Users\utkarsh\vtk-java\jdk1.8.0_121\bin\java.exe -DJOGL_GLUE:FILEPATH=C:\Users\utkarsh\.m2\repository\org\jogamp\gluegen\gluegen-rt\2.3.2\gluegen-rt-2.3.2.jar -DJOGL_LIB:FILEPATH=C:\Users\utkarsh\.m2\repository\org\jogamp\jogl\jogl-all\2.3.2\jogl-all-2.3.2.jar ../vtk-superbuild/
-
-C:\Users\utkarsh\vtk-java\jdk1.8.0_121\
diff --git a/Wrapping/Java/Testing/Java/CMakeLists.txt b/Wrapping/Java/Testing/Java/CMakeLists.txt
index 83bfad0688884627c21a2ca166186a3feb1939bf..60b8cfd357cc67ad8565c77442861edc824afef9 100644
--- a/Wrapping/Java/Testing/Java/CMakeLists.txt
+++ b/Wrapping/Java/Testing/Java/CMakeLists.txt
@@ -29,8 +29,7 @@ add_library(vtkjava_tests STATIC
 target_compile_options(vtkjava_tests
   PRIVATE
     "SHELL:-classpath \"${vtk_test_classpath}\""
-    "SHELL:-source ${VTK_JAVA_SOURCE_VERSION}"
-    "SHELL:-target ${VTK_JAVA_TARGET_VERSION}")
+    "SHELL:--release ${VTK_JAVA_RELEASE_VERSION}")
 target_link_libraries(vtkjava_tests
   PRIVATE
     VTK::vtkjava)