diff --git a/core-java-modules/core-java-11-2/pom.xml b/core-java-modules/core-java-11-2/pom.xml
index 3d008f5294..5f76c0bf3b 100644
--- a/core-java-modules/core-java-11-2/pom.xml
+++ b/core-java-modules/core-java-11-2/pom.xml
@@ -50,6 +50,11 @@
${junit.jupiter.version}
test
+
+ org.apache.commons
+ commons-lang3
+ ${commons-lang3.version}
+
@@ -73,6 +78,7 @@
5.7.0
3.17.2
5.11.1
+ 3.12.0
\ No newline at end of file
diff --git a/core-java-modules/core-java-11-2/src/test/java/com/baeldung/version/VersionUnitTest.java b/core-java-modules/core-java-11-2/src/test/java/com/baeldung/version/VersionUnitTest.java
new file mode 100644
index 0000000000..fb7d5647a5
--- /dev/null
+++ b/core-java-modules/core-java-11-2/src/test/java/com/baeldung/version/VersionUnitTest.java
@@ -0,0 +1,48 @@
+package com.baeldung.version;
+
+import org.apache.commons.lang3.SystemUtils;
+import org.assertj.core.api.Assertions;
+import org.junit.jupiter.api.Disabled;
+import org.junit.jupiter.api.Test;
+
+public class VersionUnitTest {
+
+ @Test
+ public void givenJava_whenUsingRuntime_thenGetVersion() {
+ String expectedVersion = "11";
+ Runtime.Version runtimeVersion = Runtime.version();
+ String version = String.valueOf(runtimeVersion.version().get(0));
+ Assertions.assertThat(version).isEqualTo(expectedVersion);
+ }
+
+ @Test
+ @Disabled("Only valid for Java 8 and lower")
+ public void givenJava_whenUsingCommonsLang_thenGetVersion() {
+ int expectedVersion = 8;
+ String[] versionElements = SystemUtils.JAVA_SPECIFICATION_VERSION.split("\\.");
+ int discard = Integer.parseInt(versionElements[0]);
+ int version;
+ if (discard == 1) {
+ version = Integer.parseInt(versionElements[1]);
+ } else {
+ version = discard;
+ }
+ Assertions.assertThat(version).isEqualTo(expectedVersion);
+ }
+
+ @Test
+ @Disabled("Only valid for Java 8 and lower")
+ public void givenJava_whenUsingSystemProp_thenGetVersion() {
+ int expectedVersion = 8;
+ String[] versionElements = System.getProperty("java.version").split("\\.");
+ int discard = Integer.parseInt(versionElements[0]);
+ int version;
+ if (discard == 1) {
+ version = Integer.parseInt(versionElements[1]);
+ } else {
+ version = discard;
+ }
+ Assertions.assertThat(version).isEqualTo(expectedVersion);
+ }
+}
+