diff --git a/.idea/compiler.xml b/.idea/compiler.xml
index dd2c73c531..d1117e714c 100644
--- a/.idea/compiler.xml
+++ b/.idea/compiler.xml
@@ -35,6 +35,7 @@
+
diff --git a/.idea/encodings.xml b/.idea/encodings.xml
index 9b5a7e8870..ffb87cefe3 100644
--- a/.idea/encodings.xml
+++ b/.idea/encodings.xml
@@ -1,6 +1,10 @@
+
+
+
+
diff --git a/.idea/jpa.xml b/.idea/jpa.xml
new file mode 100644
index 0000000000..898e07a675
--- /dev/null
+++ b/.idea/jpa.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/apache/README.md b/apache/README.md
new file mode 100644
index 0000000000..14656e4845
--- /dev/null
+++ b/apache/README.md
@@ -0,0 +1,4 @@
+## Apache 模块
+
+Apache 软件基金会是对 Java 开源包中贡献非常大的,很多优秀的代码都能够在 Apache 的开源包中找到。
+
diff --git a/apache-httpclient/.gitignore b/apache/apache-httpclient/.gitignore
similarity index 100%
rename from apache-httpclient/.gitignore
rename to apache/apache-httpclient/.gitignore
diff --git a/apache-httpclient/README.md b/apache/apache-httpclient/README.md
similarity index 100%
rename from apache-httpclient/README.md
rename to apache/apache-httpclient/README.md
diff --git a/apache-httpclient/pom.xml b/apache/apache-httpclient/pom.xml
similarity index 95%
rename from apache-httpclient/pom.xml
rename to apache/apache-httpclient/pom.xml
index b44df09dd3..3164c6253e 100644
--- a/apache-httpclient/pom.xml
+++ b/apache/apache-httpclient/pom.xml
@@ -8,9 +8,9 @@
apache-httpclient
- com.baeldung
- parent-modules
- 1.0.0-SNAPSHOT
+ com.ossez.apache
+ apache
+ 0.0.2-SNAPSHOT
diff --git a/apache-httpclient/src/main/resources/logback.xml b/apache/apache-httpclient/src/main/resources/logback.xml
similarity index 100%
rename from apache-httpclient/src/main/resources/logback.xml
rename to apache/apache-httpclient/src/main/resources/logback.xml
diff --git a/apache-httpclient/src/main/resources/temp.txt b/apache/apache-httpclient/src/main/resources/temp.txt
similarity index 100%
rename from apache-httpclient/src/main/resources/temp.txt
rename to apache/apache-httpclient/src/main/resources/temp.txt
diff --git a/apache-httpclient/src/test/java/com/baeldung/httpclient/GetRequestMockServer.java b/apache/apache-httpclient/src/test/java/com/baeldung/httpclient/GetRequestMockServer.java
similarity index 100%
rename from apache-httpclient/src/test/java/com/baeldung/httpclient/GetRequestMockServer.java
rename to apache/apache-httpclient/src/test/java/com/baeldung/httpclient/GetRequestMockServer.java
diff --git a/apache-httpclient/src/test/java/com/baeldung/httpclient/HttpAsyncClientLiveTest.java b/apache/apache-httpclient/src/test/java/com/baeldung/httpclient/HttpAsyncClientLiveTest.java
similarity index 100%
rename from apache-httpclient/src/test/java/com/baeldung/httpclient/HttpAsyncClientLiveTest.java
rename to apache/apache-httpclient/src/test/java/com/baeldung/httpclient/HttpAsyncClientLiveTest.java
diff --git a/apache-httpclient/src/test/java/com/baeldung/httpclient/HttpClientCancelRequestLiveTest.java b/apache/apache-httpclient/src/test/java/com/baeldung/httpclient/HttpClientCancelRequestLiveTest.java
similarity index 100%
rename from apache-httpclient/src/test/java/com/baeldung/httpclient/HttpClientCancelRequestLiveTest.java
rename to apache/apache-httpclient/src/test/java/com/baeldung/httpclient/HttpClientCancelRequestLiveTest.java
diff --git a/apache-httpclient/src/test/java/com/baeldung/httpclient/HttpClientMultipartLiveTest.java b/apache/apache-httpclient/src/test/java/com/baeldung/httpclient/HttpClientMultipartLiveTest.java
similarity index 100%
rename from apache-httpclient/src/test/java/com/baeldung/httpclient/HttpClientMultipartLiveTest.java
rename to apache/apache-httpclient/src/test/java/com/baeldung/httpclient/HttpClientMultipartLiveTest.java
diff --git a/apache-httpclient/src/test/java/com/baeldung/httpclient/HttpClientRedirectLiveTest.java b/apache/apache-httpclient/src/test/java/com/baeldung/httpclient/HttpClientRedirectLiveTest.java
similarity index 100%
rename from apache-httpclient/src/test/java/com/baeldung/httpclient/HttpClientRedirectLiveTest.java
rename to apache/apache-httpclient/src/test/java/com/baeldung/httpclient/HttpClientRedirectLiveTest.java
diff --git a/apache-httpclient/src/test/java/com/baeldung/httpclient/ResponseUtil.java b/apache/apache-httpclient/src/test/java/com/baeldung/httpclient/ResponseUtil.java
similarity index 100%
rename from apache-httpclient/src/test/java/com/baeldung/httpclient/ResponseUtil.java
rename to apache/apache-httpclient/src/test/java/com/baeldung/httpclient/ResponseUtil.java
diff --git a/apache-httpclient/src/test/java/com/baeldung/httpclient/advancedconfig/HttpClientAdvancedConfigurationIntegrationTest.java b/apache/apache-httpclient/src/test/java/com/baeldung/httpclient/advancedconfig/HttpClientAdvancedConfigurationIntegrationTest.java
similarity index 100%
rename from apache-httpclient/src/test/java/com/baeldung/httpclient/advancedconfig/HttpClientAdvancedConfigurationIntegrationTest.java
rename to apache/apache-httpclient/src/test/java/com/baeldung/httpclient/advancedconfig/HttpClientAdvancedConfigurationIntegrationTest.java
diff --git a/apache-httpclient/src/test/java/com/baeldung/httpclient/conn/HttpClientConnectionManagementLiveTest.java b/apache/apache-httpclient/src/test/java/com/baeldung/httpclient/conn/HttpClientConnectionManagementLiveTest.java
similarity index 100%
rename from apache-httpclient/src/test/java/com/baeldung/httpclient/conn/HttpClientConnectionManagementLiveTest.java
rename to apache/apache-httpclient/src/test/java/com/baeldung/httpclient/conn/HttpClientConnectionManagementLiveTest.java
diff --git a/apache-httpclient/src/test/java/com/baeldung/httpclient/conn/MultiHttpClientConnThread.java b/apache/apache-httpclient/src/test/java/com/baeldung/httpclient/conn/MultiHttpClientConnThread.java
similarity index 100%
rename from apache-httpclient/src/test/java/com/baeldung/httpclient/conn/MultiHttpClientConnThread.java
rename to apache/apache-httpclient/src/test/java/com/baeldung/httpclient/conn/MultiHttpClientConnThread.java
diff --git a/apache-httpclient/src/test/java/com/baeldung/httpclient/conn/TesterVersion_MultiHttpClientConnThread.java b/apache/apache-httpclient/src/test/java/com/baeldung/httpclient/conn/TesterVersion_MultiHttpClientConnThread.java
similarity index 100%
rename from apache-httpclient/src/test/java/com/baeldung/httpclient/conn/TesterVersion_MultiHttpClientConnThread.java
rename to apache/apache-httpclient/src/test/java/com/baeldung/httpclient/conn/TesterVersion_MultiHttpClientConnThread.java
diff --git a/apache-httpclient/src/test/resources/.gitignore b/apache/apache-httpclient/src/test/resources/.gitignore
similarity index 100%
rename from apache-httpclient/src/test/resources/.gitignore
rename to apache/apache-httpclient/src/test/resources/.gitignore
diff --git a/apache-httpclient/src/test/resources/test.in b/apache/apache-httpclient/src/test/resources/test.in
similarity index 100%
rename from apache-httpclient/src/test/resources/test.in
rename to apache/apache-httpclient/src/test/resources/test.in
diff --git a/apache-httpclient/src/test/resources/uploads/image.jpg b/apache/apache-httpclient/src/test/resources/uploads/image.jpg
similarity index 100%
rename from apache-httpclient/src/test/resources/uploads/image.jpg
rename to apache/apache-httpclient/src/test/resources/uploads/image.jpg
diff --git a/apache-httpclient/src/test/resources/uploads/sandbox.txt b/apache/apache-httpclient/src/test/resources/uploads/sandbox.txt
similarity index 100%
rename from apache-httpclient/src/test/resources/uploads/sandbox.txt
rename to apache/apache-httpclient/src/test/resources/uploads/sandbox.txt
diff --git a/apache-httpclient/src/test/resources/uploads/temp.txt b/apache/apache-httpclient/src/test/resources/uploads/temp.txt
similarity index 100%
rename from apache-httpclient/src/test/resources/uploads/temp.txt
rename to apache/apache-httpclient/src/test/resources/uploads/temp.txt
diff --git a/apache-httpclient/src/test/resources/uploads/zipFile.zip b/apache/apache-httpclient/src/test/resources/uploads/zipFile.zip
similarity index 100%
rename from apache-httpclient/src/test/resources/uploads/zipFile.zip
rename to apache/apache-httpclient/src/test/resources/uploads/zipFile.zip
diff --git a/apache/pom.xml b/apache/pom.xml
new file mode 100644
index 0000000000..6282eb98e5
--- /dev/null
+++ b/apache/pom.xml
@@ -0,0 +1,45 @@
+
+
+ 4.0.0
+ com.ossez.apache
+ apache
+ apache-modules
+ pom
+
+
+ com.ossez
+ parent-modules
+ 0.0.2-SNAPSHOT
+ ../pom.xml
+
+
+
+ apache-httpclient
+
+
+
+
+
+ junit
+ junit
+ ${junit4.version}
+ test
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ ${junit-jupiter.version}
+ test
+
+
+ org.junit.vintage
+ junit-vintage-engine
+ ${junit-jupiter.version}
+ test
+
+
+
+
+
diff --git a/pom.xml b/pom.xml
index 02ec984661..e8b5a3b708 100644
--- a/pom.xml
+++ b/pom.xml
@@ -39,6 +39,7 @@
+ apache
core-java-modules
image-compressing
image-processing