diff --git a/core-java-modules/core-java-jvm/README.md b/core-java-modules/core-java-jvm/README.md
index 82067ad952..9f1d21fa6f 100644
--- a/core-java-modules/core-java-jvm/README.md
+++ b/core-java-modules/core-java-jvm/README.md
@@ -1,6 +1,8 @@
-=========
-
## Core Java JVM Cookbooks and Examples
### Relevant Articles:
+
- [Method Inlining in the JVM](https://www.baeldung.com/jvm-method-inlining)
+- [JVM Log Forging](http://www.baeldung.com/jvm-log-forging)
+- [Guide to Java Instrumentation](http://www.baeldung.com/java-instrumentation)
+- [Class Loaders in Java](http://www.baeldung.com/java-classloaders)
diff --git a/core-java-modules/core-java-jvm/pom.xml b/core-java-modules/core-java-jvm/pom.xml
index b1860322a6..b6fd81fe45 100644
--- a/core-java-modules/core-java-jvm/pom.xml
+++ b/core-java-modules/core-java-jvm/pom.xml
@@ -32,9 +32,31 @@
${assertj.version}
test
+
+ org.javassist
+ javassist
+ ${javaassist.version}
+
+
+ org.owasp.esapi
+ esapi
+ ${esapi.version}
+
+
+ com.sun
+ tools
+ ${sun.tools.version}
+ system
+ ${java.home}/../lib/tools.jar
+
+
3.6.1
+
+ 3.21.0-GA
+ 2.1.0.1
+ 1.8.0
diff --git a/core-java-modules/core-java/src/main/java/com/baeldung/classloader/CustomClassLoader.java b/core-java-modules/core-java-jvm/src/main/java/com/baeldung/classloader/CustomClassLoader.java
similarity index 100%
rename from core-java-modules/core-java/src/main/java/com/baeldung/classloader/CustomClassLoader.java
rename to core-java-modules/core-java-jvm/src/main/java/com/baeldung/classloader/CustomClassLoader.java
diff --git a/core-java-modules/core-java/src/main/java/com/baeldung/classloader/PrintClassLoader.java b/core-java-modules/core-java-jvm/src/main/java/com/baeldung/classloader/PrintClassLoader.java
similarity index 100%
rename from core-java-modules/core-java/src/main/java/com/baeldung/classloader/PrintClassLoader.java
rename to core-java-modules/core-java-jvm/src/main/java/com/baeldung/classloader/PrintClassLoader.java
diff --git a/core-java-modules/core-java/src/main/java/com/baeldung/instrumentation/agent/AtmTransformer.java b/core-java-modules/core-java-jvm/src/main/java/com/baeldung/instrumentation/agent/AtmTransformer.java
similarity index 100%
rename from core-java-modules/core-java/src/main/java/com/baeldung/instrumentation/agent/AtmTransformer.java
rename to core-java-modules/core-java-jvm/src/main/java/com/baeldung/instrumentation/agent/AtmTransformer.java
diff --git a/core-java-modules/core-java/src/main/java/com/baeldung/instrumentation/agent/MyInstrumentationAgent.java b/core-java-modules/core-java-jvm/src/main/java/com/baeldung/instrumentation/agent/MyInstrumentationAgent.java
similarity index 100%
rename from core-java-modules/core-java/src/main/java/com/baeldung/instrumentation/agent/MyInstrumentationAgent.java
rename to core-java-modules/core-java-jvm/src/main/java/com/baeldung/instrumentation/agent/MyInstrumentationAgent.java
diff --git a/core-java-modules/core-java/src/main/java/com/baeldung/instrumentation/application/AgentLoader.java b/core-java-modules/core-java-jvm/src/main/java/com/baeldung/instrumentation/application/AgentLoader.java
similarity index 100%
rename from core-java-modules/core-java/src/main/java/com/baeldung/instrumentation/application/AgentLoader.java
rename to core-java-modules/core-java-jvm/src/main/java/com/baeldung/instrumentation/application/AgentLoader.java
diff --git a/core-java-modules/core-java/src/main/java/com/baeldung/instrumentation/application/Launcher.java b/core-java-modules/core-java-jvm/src/main/java/com/baeldung/instrumentation/application/Launcher.java
similarity index 100%
rename from core-java-modules/core-java/src/main/java/com/baeldung/instrumentation/application/Launcher.java
rename to core-java-modules/core-java-jvm/src/main/java/com/baeldung/instrumentation/application/Launcher.java
diff --git a/core-java-modules/core-java/src/main/java/com/baeldung/instrumentation/application/MyAtm.java b/core-java-modules/core-java-jvm/src/main/java/com/baeldung/instrumentation/application/MyAtm.java
similarity index 100%
rename from core-java-modules/core-java/src/main/java/com/baeldung/instrumentation/application/MyAtm.java
rename to core-java-modules/core-java-jvm/src/main/java/com/baeldung/instrumentation/application/MyAtm.java
diff --git a/core-java-modules/core-java/src/main/java/com/baeldung/instrumentation/application/MyAtmApplication.java b/core-java-modules/core-java-jvm/src/main/java/com/baeldung/instrumentation/application/MyAtmApplication.java
similarity index 100%
rename from core-java-modules/core-java/src/main/java/com/baeldung/instrumentation/application/MyAtmApplication.java
rename to core-java-modules/core-java-jvm/src/main/java/com/baeldung/instrumentation/application/MyAtmApplication.java
diff --git a/core-java-modules/core-java/src/main/java/com/baeldung/logforging/LogForgingDemo.java b/core-java-modules/core-java-jvm/src/main/java/com/baeldung/logforging/LogForgingDemo.java
similarity index 100%
rename from core-java-modules/core-java/src/main/java/com/baeldung/logforging/LogForgingDemo.java
rename to core-java-modules/core-java-jvm/src/main/java/com/baeldung/logforging/LogForgingDemo.java
diff --git a/core-java-modules/core-java/src/main/resources/ESAPI.properties b/core-java-modules/core-java-jvm/src/main/resources/ESAPI.properties
similarity index 100%
rename from core-java-modules/core-java/src/main/resources/ESAPI.properties
rename to core-java-modules/core-java-jvm/src/main/resources/ESAPI.properties
diff --git a/core-java-modules/core-java/src/test/java/com/baeldung/classloader/CustomClassLoaderUnitTest.java b/core-java-modules/core-java-jvm/src/test/java/com/baeldung/classloader/CustomClassLoaderUnitTest.java
similarity index 100%
rename from core-java-modules/core-java/src/test/java/com/baeldung/classloader/CustomClassLoaderUnitTest.java
rename to core-java-modules/core-java-jvm/src/test/java/com/baeldung/classloader/CustomClassLoaderUnitTest.java
diff --git a/core-java-modules/core-java/src/test/java/com/baeldung/classloader/PrintClassLoaderUnitTest.java b/core-java-modules/core-java-jvm/src/test/java/com/baeldung/classloader/PrintClassLoaderUnitTest.java
similarity index 100%
rename from core-java-modules/core-java/src/test/java/com/baeldung/classloader/PrintClassLoaderUnitTest.java
rename to core-java-modules/core-java-jvm/src/test/java/com/baeldung/classloader/PrintClassLoaderUnitTest.java
diff --git a/core-java-modules/core-java-os/README.md b/core-java-modules/core-java-os/README.md
index 9205628a87..f2ec3f9d48 100644
--- a/core-java-modules/core-java-os/README.md
+++ b/core-java-modules/core-java-os/README.md
@@ -3,9 +3,14 @@
This module contains articles about working with the operating system (OS) in Java
### Relevant Articles:
+
- [Java 9 Process API Improvements](http://www.baeldung.com/java-9-process-api)
- [Guide to java.lang.Process API](https://www.baeldung.com/java-process-api)
- [Guide to java.lang.ProcessBuilder API](https://www.baeldung.com/java-lang-processbuilder-api)
- [Get the Current Working Directory in Java](https://www.baeldung.com/java-current-directory)
+- [How to Detect the OS Using Java](http://www.baeldung.com/java-detect-os)
+- [How to Print Screen in Java](http://www.baeldung.com/print-screen-in-java)
+- [Pattern Search with Grep in Java](http://www.baeldung.com/grep-in-java)
+- [How to Run a Shell Command in Java](http://www.baeldung.com/run-shell-command-in-java)
This module uses Java 9, so make sure to have the JDK 9 installed to run it.
\ No newline at end of file
diff --git a/core-java-modules/core-java-os/pom.xml b/core-java-modules/core-java-os/pom.xml
index f6c5ef04a5..16391e968d 100644
--- a/core-java-modules/core-java-os/pom.xml
+++ b/core-java-modules/core-java-os/pom.xml
@@ -42,6 +42,16 @@
${assertj.version}
test
+
+ org.unix4j
+ unix4j-command
+ ${unix4j.version}
+
+
+ com.googlecode.grep4j
+ grep4j
+ ${grep4j.version}
+
@@ -77,5 +87,7 @@
1.9
1.9
25.1-jre
+ 0.4
+ 1.8.7
diff --git a/core-java-modules/core-java/src/main/java/com/baeldung/printscreen/Screenshot.java b/core-java-modules/core-java-os/src/main/java/com/baeldung/printscreen/Screenshot.java
similarity index 100%
rename from core-java-modules/core-java/src/main/java/com/baeldung/printscreen/Screenshot.java
rename to core-java-modules/core-java-os/src/main/java/com/baeldung/printscreen/Screenshot.java
diff --git a/core-java-modules/core-java/src/main/java/com/baeldung/system/DetectOS.java b/core-java-modules/core-java-os/src/main/java/com/baeldung/system/DetectOS.java
similarity index 100%
rename from core-java-modules/core-java/src/main/java/com/baeldung/system/DetectOS.java
rename to core-java-modules/core-java-os/src/main/java/com/baeldung/system/DetectOS.java
diff --git a/core-java-modules/core-java/src/test/java/com/baeldung/grep/GrepWithUnix4JIntegrationTest.java b/core-java-modules/core-java-os/src/test/java/com/baeldung/grep/GrepWithUnix4JIntegrationTest.java
similarity index 100%
rename from core-java-modules/core-java/src/test/java/com/baeldung/grep/GrepWithUnix4JIntegrationTest.java
rename to core-java-modules/core-java-os/src/test/java/com/baeldung/grep/GrepWithUnix4JIntegrationTest.java
diff --git a/core-java-modules/core-java/src/test/java/com/baeldung/printscreen/ScreenshotLiveTest.java b/core-java-modules/core-java-os/src/test/java/com/baeldung/printscreen/ScreenshotLiveTest.java
similarity index 100%
rename from core-java-modules/core-java/src/test/java/com/baeldung/printscreen/ScreenshotLiveTest.java
rename to core-java-modules/core-java-os/src/test/java/com/baeldung/printscreen/ScreenshotLiveTest.java
diff --git a/core-java-modules/core-java/src/test/java/org/baeldung/java/shell/JavaProcessUnitIntegrationTest.java b/core-java-modules/core-java-os/src/test/java/com/baeldung/shell/JavaProcessUnitIntegrationTest.java
similarity index 98%
rename from core-java-modules/core-java/src/test/java/org/baeldung/java/shell/JavaProcessUnitIntegrationTest.java
rename to core-java-modules/core-java-os/src/test/java/com/baeldung/shell/JavaProcessUnitIntegrationTest.java
index efd7dda70f..53e9364207 100644
--- a/core-java-modules/core-java/src/test/java/org/baeldung/java/shell/JavaProcessUnitIntegrationTest.java
+++ b/core-java-modules/core-java-os/src/test/java/com/baeldung/shell/JavaProcessUnitIntegrationTest.java
@@ -1,4 +1,4 @@
-package org.baeldung.java.shell;
+package com.baeldung.java.shell;
import org.junit.Assert;
import org.junit.Test;
diff --git a/core-java-modules/core-java/src/test/java/com/baeldung/system/WhenDetectingOSUnitTest.java b/core-java-modules/core-java-os/src/test/java/com/baeldung/system/WhenDetectingOSUnitTest.java
similarity index 100%
rename from core-java-modules/core-java/src/test/java/com/baeldung/system/WhenDetectingOSUnitTest.java
rename to core-java-modules/core-java-os/src/test/java/com/baeldung/system/WhenDetectingOSUnitTest.java
diff --git a/core-java-modules/core-java/README.md b/core-java-modules/core-java/README.md
index 436a481803..a592449799 100644
--- a/core-java-modules/core-java/README.md
+++ b/core-java-modules/core-java/README.md
@@ -1,18 +1,12 @@
-=========
-
## Core Java Cookbooks and Examples
### Relevant Articles:
- [Java Timer](http://www.baeldung.com/java-timer-and-timertask)
-- [How to Run a Shell Command in Java](http://www.baeldung.com/run-shell-command-in-java)
-- [How to Print Screen in Java](http://www.baeldung.com/print-screen-in-java)
- [A Guide To Java Regular Expressions API](http://www.baeldung.com/regular-expressions-java)
- [Getting Started with Java Properties](http://www.baeldung.com/java-properties)
-- [Pattern Search with Grep in Java](http://www.baeldung.com/grep-in-java)
- [How to Create an Executable JAR with Maven](http://www.baeldung.com/executable-jar-with-maven)
- [Introduction to Nashorn](http://www.baeldung.com/java-nashorn)
- [Java Money and the Currency API](http://www.baeldung.com/java-money-and-currency)
-- [JVM Log Forging](http://www.baeldung.com/jvm-log-forging)
- [How to Add a Single Element to a Stream](http://www.baeldung.com/java-stream-append-prepend)
- [How to Find all Getters Returning Null](http://www.baeldung.com/java-getters-returning-null)
- [How to Get a Name of a Method Being Executed?](http://www.baeldung.com/java-name-of-executing-method)
@@ -24,16 +18,13 @@
- [Compiling Java *.class Files with javac](http://www.baeldung.com/javac)
- [Introduction to Javadoc](http://www.baeldung.com/javadoc)
- [Guide to the Externalizable Interface in Java](http://www.baeldung.com/java-externalizable)
-- [How to Detect the OS Using Java](http://www.baeldung.com/java-detect-os)
- [ASCII Art in Java](http://www.baeldung.com/ascii-art-in-java)
- [What is the serialVersionUID?](http://www.baeldung.com/java-serial-version-uid)
- [A Guide to the ResourceBundle](http://www.baeldung.com/java-resourcebundle)
-- [Class Loaders in Java](http://www.baeldung.com/java-classloaders)
- [Guide to the Java Clock Class](http://www.baeldung.com/java-clock)
- [Importance of Main Manifest Attribute in a Self-Executing JAR](http://www.baeldung.com/java-jar-executable-manifest-main-class)
- [Java Global Exception Handler](http://www.baeldung.com/java-global-exception-handler)
- [How to Get the Size of an Object in Java](http://www.baeldung.com/java-size-of-object)
-- [Guide to Java Instrumentation](http://www.baeldung.com/java-instrumentation)
- [Common Java Exceptions](http://www.baeldung.com/java-common-exceptions)
- [Throw Exception in Optional in Java 8](https://www.baeldung.com/java-optional-throw-exception)
- [Merging java.util.Properties Objects](https://www.baeldung.com/java-merging-properties)
diff --git a/core-java-modules/core-java/pom.xml b/core-java-modules/core-java/pom.xml
index 2a2cb3a6af..f04e63eb7c 100644
--- a/core-java-modules/core-java/pom.xml
+++ b/core-java-modules/core-java/pom.xml
@@ -75,11 +75,7 @@
moneta
${javamoney.moneta.version}
-
- org.owasp.esapi
- esapi
- ${esapi.version}
-
+
com.sun.messaging.mq
fscontext
@@ -115,19 +111,7 @@
h2
${h2.version}
-
-
- org.javassist
- javassist
- ${javaassist.version}
-
-
- com.sun
- tools
- ${sun.tools.version}
- system
- ${java.home}/../lib/tools.jar
-
+
@@ -469,7 +453,7 @@
2.21.0
1.1
- 2.1.0.1
+
1.19
1.19
@@ -480,9 +464,8 @@
2.0.3.RELEASE
1.6.0
61.1
-
- 3.21.0-GA
+
- 1.8.0
+
diff --git a/core-java-modules/core-java/src/main/java/com/baeldung/printscreen/README.md b/core-java-modules/core-java/src/main/java/com/baeldung/printscreen/README.md
deleted file mode 100644
index 7b3b40c102..0000000000
--- a/core-java-modules/core-java/src/main/java/com/baeldung/printscreen/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-### Relevant Articles:
-- [How to Print Screen in Java](http://www.baeldung.com/print-screen-in-java)