diff --git a/java-dates-2/README.md b/java-dates-2/README.md
deleted file mode 100644
index b2f8319e58..0000000000
--- a/java-dates-2/README.md
+++ /dev/null
@@ -1,4 +0,0 @@
-## Relevant Articles:
-- [Converting Between LocalDate and XMLGregorianCalendar](https://www.baeldung.com/java-localdate-to-xmlgregoriancalendar)
-- [Convert Time to Milliseconds in Java](https://www.baeldung.com/java-time-milliseconds)
-- [Check If a String Is a Valid Date in Java](https://www.baeldung.com/java-string-valid-date)
diff --git a/java-dates-2/.gitignore b/java-dates-conversion/.gitignore
similarity index 90%
rename from java-dates-2/.gitignore
rename to java-dates-conversion/.gitignore
index 6471aabbcf..3de4cc647e 100644
--- a/java-dates-2/.gitignore
+++ b/java-dates-conversion/.gitignore
@@ -23,7 +23,4 @@ backup-pom.xml
#IntelliJ specific
.idea/
-*.iml
-
-#jenv
-.java-version
\ No newline at end of file
+*.iml
\ No newline at end of file
diff --git a/java-dates-conversion/README.md b/java-dates-conversion/README.md
new file mode 100644
index 0000000000..f781a9515c
--- /dev/null
+++ b/java-dates-conversion/README.md
@@ -0,0 +1,9 @@
+=========
+
+## Java Date/time conversion Cookbooks and Examples
+
+### Relevant Articles:
+- [Converting Between LocalDate and XMLGregorianCalendar](https://www.baeldung.com/java-localdate-to-xmlgregoriancalendar)
+- [Convert Time to Milliseconds in Java](https://www.baeldung.com/java-time-milliseconds)
+- [Convert Date to LocalDate or LocalDateTime and Back](http://www.baeldung.com/java-date-to-localdate-and-localdatetime)
+- [Convert Between java.time.Instant and java.sql.Timestamp](https://www.baeldung.com/java-time-instant-to-java-sql-timestamp)
diff --git a/java-dates-2/pom.xml b/java-dates-conversion/pom.xml
similarity index 76%
rename from java-dates-2/pom.xml
rename to java-dates-conversion/pom.xml
index c1419514ef..c9326eb44c 100644
--- a/java-dates-2/pom.xml
+++ b/java-dates-conversion/pom.xml
@@ -1,11 +1,10 @@
4.0.0
- com.baeldung
- java-dates-2
- 0.1.0-SNAPSHOT
+ java-dates-conversion
+ ${project.parent.version}
+ java-dates
jar
- java-dates-2
com.baeldung
@@ -20,14 +19,16 @@
joda-time
${joda-time.version}
-
-
- commons-validator
- commons-validator
- ${commons-validator.version}
+ org.apache.commons
+ commons-lang3
+ ${commons-lang3.version}
+
+
+ log4j
+ log4j
+ ${log4j.version}
-
org.assertj
@@ -38,7 +39,7 @@
- java-dates-2
+ java-dates
src/main/resources
@@ -60,11 +61,10 @@
+ 2.10
3.6.1
- 2.10
- 1.6
- 1.9
+ 1.9
1.9
diff --git a/java-dates/src/main/java/com/baeldung/datetolocaldate/DateToLocalDateConverter.java b/java-dates-conversion/src/main/java/com/baeldung/datetolocaldate/DateToLocalDateConverter.java
similarity index 100%
rename from java-dates/src/main/java/com/baeldung/datetolocaldate/DateToLocalDateConverter.java
rename to java-dates-conversion/src/main/java/com/baeldung/datetolocaldate/DateToLocalDateConverter.java
diff --git a/java-dates/src/main/java/com/baeldung/datetolocaldate/DateToLocalDateTimeConverter.java b/java-dates-conversion/src/main/java/com/baeldung/datetolocaldate/DateToLocalDateTimeConverter.java
similarity index 100%
rename from java-dates/src/main/java/com/baeldung/datetolocaldate/DateToLocalDateTimeConverter.java
rename to java-dates-conversion/src/main/java/com/baeldung/datetolocaldate/DateToLocalDateTimeConverter.java
diff --git a/java-dates/src/main/java/com/baeldung/datetolocaldate/LocalDateTimeToDateConverter.java b/java-dates-conversion/src/main/java/com/baeldung/datetolocaldate/LocalDateTimeToDateConverter.java
similarity index 100%
rename from java-dates/src/main/java/com/baeldung/datetolocaldate/LocalDateTimeToDateConverter.java
rename to java-dates-conversion/src/main/java/com/baeldung/datetolocaldate/LocalDateTimeToDateConverter.java
diff --git a/java-dates/src/main/java/com/baeldung/datetolocaldate/LocalDateToDateConverter.java b/java-dates-conversion/src/main/java/com/baeldung/datetolocaldate/LocalDateToDateConverter.java
similarity index 100%
rename from java-dates/src/main/java/com/baeldung/datetolocaldate/LocalDateToDateConverter.java
rename to java-dates-conversion/src/main/java/com/baeldung/datetolocaldate/LocalDateToDateConverter.java
diff --git a/java-dates-2/src/test/java/com/baeldung/convert/ConvertDateTimeUnitTest.java b/java-dates-conversion/src/test/java/com/baeldung/convert/ConvertDateTimeUnitTest.java
similarity index 100%
rename from java-dates-2/src/test/java/com/baeldung/convert/ConvertDateTimeUnitTest.java
rename to java-dates-conversion/src/test/java/com/baeldung/convert/ConvertDateTimeUnitTest.java
diff --git a/java-dates/src/test/java/com/baeldung/datetime/ConvertInstantToTimestampUnitTest.java b/java-dates-conversion/src/test/java/com/baeldung/datetime/ConvertInstantToTimestampUnitTest.java
similarity index 97%
rename from java-dates/src/test/java/com/baeldung/datetime/ConvertInstantToTimestampUnitTest.java
rename to java-dates-conversion/src/test/java/com/baeldung/datetime/ConvertInstantToTimestampUnitTest.java
index 3ba01a591a..e5fd80285c 100644
--- a/java-dates/src/test/java/com/baeldung/datetime/ConvertInstantToTimestampUnitTest.java
+++ b/java-dates-conversion/src/test/java/com/baeldung/datetime/ConvertInstantToTimestampUnitTest.java
@@ -1,15 +1,14 @@
package com.baeldung.datetime;
-import static org.assertj.core.api.Assertions.assertThat;
+import org.junit.Test;
import java.sql.Timestamp;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.time.Instant;
-import java.time.ZoneId;
import java.util.TimeZone;
-import org.junit.Test;
+import static org.assertj.core.api.Assertions.assertThat;
public class ConvertInstantToTimestampUnitTest {
diff --git a/java-dates/src/test/java/com/baeldung/datetolocaldate/DateToLocalDateConverterUnitTest.java b/java-dates-conversion/src/test/java/com/baeldung/datetolocaldate/DateToLocalDateConverterUnitTest.java
similarity index 100%
rename from java-dates/src/test/java/com/baeldung/datetolocaldate/DateToLocalDateConverterUnitTest.java
rename to java-dates-conversion/src/test/java/com/baeldung/datetolocaldate/DateToLocalDateConverterUnitTest.java
diff --git a/java-dates/src/test/java/com/baeldung/datetolocaldate/DateToLocalDateTimeConverterUnitTest.java b/java-dates-conversion/src/test/java/com/baeldung/datetolocaldate/DateToLocalDateTimeConverterUnitTest.java
similarity index 100%
rename from java-dates/src/test/java/com/baeldung/datetolocaldate/DateToLocalDateTimeConverterUnitTest.java
rename to java-dates-conversion/src/test/java/com/baeldung/datetolocaldate/DateToLocalDateTimeConverterUnitTest.java
diff --git a/java-dates/src/test/java/com/baeldung/datetolocaldate/LocalDateTimeToDateConverterUnitTest.java b/java-dates-conversion/src/test/java/com/baeldung/datetolocaldate/LocalDateTimeToDateConverterUnitTest.java
similarity index 100%
rename from java-dates/src/test/java/com/baeldung/datetolocaldate/LocalDateTimeToDateConverterUnitTest.java
rename to java-dates-conversion/src/test/java/com/baeldung/datetolocaldate/LocalDateTimeToDateConverterUnitTest.java
diff --git a/java-dates/src/test/java/com/baeldung/datetolocaldate/LocalDateToDateConverterUnitTest.java b/java-dates-conversion/src/test/java/com/baeldung/datetolocaldate/LocalDateToDateConverterUnitTest.java
similarity index 100%
rename from java-dates/src/test/java/com/baeldung/datetolocaldate/LocalDateToDateConverterUnitTest.java
rename to java-dates-conversion/src/test/java/com/baeldung/datetolocaldate/LocalDateToDateConverterUnitTest.java
diff --git a/java-dates-2/src/test/java/com/baeldung/xmlgregoriancalendar/XmlGregorianCalendarConverterUnitTest.java b/java-dates-conversion/src/test/java/com/baeldung/xmlgregoriancalendar/XmlGregorianCalendarConverterUnitTest.java
similarity index 100%
rename from java-dates-2/src/test/java/com/baeldung/xmlgregoriancalendar/XmlGregorianCalendarConverterUnitTest.java
rename to java-dates-conversion/src/test/java/com/baeldung/xmlgregoriancalendar/XmlGregorianCalendarConverterUnitTest.java
diff --git a/java-dates-string/.gitignore b/java-dates-string/.gitignore
new file mode 100644
index 0000000000..3de4cc647e
--- /dev/null
+++ b/java-dates-string/.gitignore
@@ -0,0 +1,26 @@
+*.class
+
+0.*
+
+#folders#
+/target
+/neoDb*
+/data
+/src/main/webapp/WEB-INF/classes
+*/META-INF/*
+.resourceCache
+
+# Packaged files #
+*.jar
+*.war
+*.ear
+
+# Files generated by integration tests
+*.txt
+backup-pom.xml
+/bin/
+/temp
+
+#IntelliJ specific
+.idea/
+*.iml
\ No newline at end of file
diff --git a/java-dates-string/README.md b/java-dates-string/README.md
new file mode 100644
index 0000000000..9becf8a460
--- /dev/null
+++ b/java-dates-string/README.md
@@ -0,0 +1,12 @@
+=========
+
+## Java Dates Parsing and Formatting Cookbooks and Examples
+
+### Relevant Articles:
+- [Check If a String Is a Valid Date in Java](https://www.baeldung.com/java-string-valid-date)
+- [RegEx for matching Date Pattern in Java](http://www.baeldung.com/java-date-regular-expressions)
+- [Guide to DateTimeFormatter](https://www.baeldung.com/java-datetimeformatter)
+- [Format ZonedDateTime to String](https://www.baeldung.com/java-format-zoned-datetime-string)
+- [A Guide to SimpleDateFormat](https://www.baeldung.com/java-simple-date-format)
+- [Display All Time Zones With GMT And UTC in Java](http://www.baeldung.com/java-time-zones)
+- [Convert between String and Timestamp](https://www.baeldung.com/java-string-to-timestamp)
diff --git a/java-dates-string/pom.xml b/java-dates-string/pom.xml
new file mode 100644
index 0000000000..d65ac140fb
--- /dev/null
+++ b/java-dates-string/pom.xml
@@ -0,0 +1,83 @@
+
+ 4.0.0
+ java-dates-string
+ ${project.parent.version}
+ java-dates
+ jar
+
+
+ com.baeldung
+ parent-java
+ 0.0.1-SNAPSHOT
+ ../parent-java
+
+
+
+
+ org.apache.commons
+ commons-lang3
+ ${commons-lang3.version}
+
+
+
+ commons-validator
+ commons-validator
+ ${commons-validator.version}
+
+
+ log4j
+ log4j
+ ${log4j.version}
+
+
+
+ org.assertj
+ assertj-core
+ ${assertj.version}
+ test
+
+
+ joda-time
+ joda-time
+ ${joda-time.version}
+
+
+ com.darwinsys
+ hirondelle-date4j
+ RELEASE
+ test
+
+
+
+
+ java-dates
+
+
+ src/main/resources
+ true
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ ${maven-compiler-plugin.version}
+
+ ${maven.compiler.source}
+ ${maven.compiler.target}
+
+
+
+
+
+
+ 1.6
+ 2.10
+
+ 3.6.1
+ 1.9
+ 1.9
+
+
diff --git a/java-dates-2/src/main/java/com/baeldung/date/validation/DateValidator.java b/java-dates-string/src/main/java/com/baeldung/date/validation/DateValidator.java
similarity index 100%
rename from java-dates-2/src/main/java/com/baeldung/date/validation/DateValidator.java
rename to java-dates-string/src/main/java/com/baeldung/date/validation/DateValidator.java
diff --git a/java-dates-2/src/main/java/com/baeldung/date/validation/DateValidatorUsingApacheValidator.java b/java-dates-string/src/main/java/com/baeldung/date/validation/DateValidatorUsingApacheValidator.java
similarity index 100%
rename from java-dates-2/src/main/java/com/baeldung/date/validation/DateValidatorUsingApacheValidator.java
rename to java-dates-string/src/main/java/com/baeldung/date/validation/DateValidatorUsingApacheValidator.java
diff --git a/java-dates-2/src/main/java/com/baeldung/date/validation/DateValidatorUsingDateFormat.java b/java-dates-string/src/main/java/com/baeldung/date/validation/DateValidatorUsingDateFormat.java
similarity index 100%
rename from java-dates-2/src/main/java/com/baeldung/date/validation/DateValidatorUsingDateFormat.java
rename to java-dates-string/src/main/java/com/baeldung/date/validation/DateValidatorUsingDateFormat.java
diff --git a/java-dates-2/src/main/java/com/baeldung/date/validation/DateValidatorUsingDateTimeFormatter.java b/java-dates-string/src/main/java/com/baeldung/date/validation/DateValidatorUsingDateTimeFormatter.java
similarity index 100%
rename from java-dates-2/src/main/java/com/baeldung/date/validation/DateValidatorUsingDateTimeFormatter.java
rename to java-dates-string/src/main/java/com/baeldung/date/validation/DateValidatorUsingDateTimeFormatter.java
diff --git a/java-dates-2/src/main/java/com/baeldung/date/validation/DateValidatorUsingLocalDate.java b/java-dates-string/src/main/java/com/baeldung/date/validation/DateValidatorUsingLocalDate.java
similarity index 100%
rename from java-dates-2/src/main/java/com/baeldung/date/validation/DateValidatorUsingLocalDate.java
rename to java-dates-string/src/main/java/com/baeldung/date/validation/DateValidatorUsingLocalDate.java
diff --git a/java-dates/src/main/java/com/baeldung/regexp/datepattern/DateMatcher.java b/java-dates-string/src/main/java/com/baeldung/regexp/datepattern/DateMatcher.java
similarity index 100%
rename from java-dates/src/main/java/com/baeldung/regexp/datepattern/DateMatcher.java
rename to java-dates-string/src/main/java/com/baeldung/regexp/datepattern/DateMatcher.java
diff --git a/java-dates/src/main/java/com/baeldung/regexp/datepattern/FormattedDateMatcher.java b/java-dates-string/src/main/java/com/baeldung/regexp/datepattern/FormattedDateMatcher.java
similarity index 100%
rename from java-dates/src/main/java/com/baeldung/regexp/datepattern/FormattedDateMatcher.java
rename to java-dates-string/src/main/java/com/baeldung/regexp/datepattern/FormattedDateMatcher.java
diff --git a/java-dates/src/main/java/com/baeldung/regexp/datepattern/RangedDateMatcher.java b/java-dates-string/src/main/java/com/baeldung/regexp/datepattern/RangedDateMatcher.java
similarity index 100%
rename from java-dates/src/main/java/com/baeldung/regexp/datepattern/RangedDateMatcher.java
rename to java-dates-string/src/main/java/com/baeldung/regexp/datepattern/RangedDateMatcher.java
diff --git a/java-dates/src/main/java/com/baeldung/regexp/datepattern/gregorian/February29thMatcher.java b/java-dates-string/src/main/java/com/baeldung/regexp/datepattern/gregorian/February29thMatcher.java
similarity index 100%
rename from java-dates/src/main/java/com/baeldung/regexp/datepattern/gregorian/February29thMatcher.java
rename to java-dates-string/src/main/java/com/baeldung/regexp/datepattern/gregorian/February29thMatcher.java
diff --git a/java-dates/src/main/java/com/baeldung/regexp/datepattern/gregorian/FebruaryGeneralMatcher.java b/java-dates-string/src/main/java/com/baeldung/regexp/datepattern/gregorian/FebruaryGeneralMatcher.java
similarity index 100%
rename from java-dates/src/main/java/com/baeldung/regexp/datepattern/gregorian/FebruaryGeneralMatcher.java
rename to java-dates-string/src/main/java/com/baeldung/regexp/datepattern/gregorian/FebruaryGeneralMatcher.java
diff --git a/java-dates/src/main/java/com/baeldung/regexp/datepattern/gregorian/GregorianDateMatcher.java b/java-dates-string/src/main/java/com/baeldung/regexp/datepattern/gregorian/GregorianDateMatcher.java
similarity index 100%
rename from java-dates/src/main/java/com/baeldung/regexp/datepattern/gregorian/GregorianDateMatcher.java
rename to java-dates-string/src/main/java/com/baeldung/regexp/datepattern/gregorian/GregorianDateMatcher.java
diff --git a/java-dates/src/main/java/com/baeldung/regexp/datepattern/gregorian/MonthsOf30DaysMatcher.java b/java-dates-string/src/main/java/com/baeldung/regexp/datepattern/gregorian/MonthsOf30DaysMatcher.java
similarity index 100%
rename from java-dates/src/main/java/com/baeldung/regexp/datepattern/gregorian/MonthsOf30DaysMatcher.java
rename to java-dates-string/src/main/java/com/baeldung/regexp/datepattern/gregorian/MonthsOf30DaysMatcher.java
diff --git a/java-dates/src/main/java/com/baeldung/regexp/datepattern/gregorian/MonthsOf31DaysMatcher.java b/java-dates-string/src/main/java/com/baeldung/regexp/datepattern/gregorian/MonthsOf31DaysMatcher.java
similarity index 100%
rename from java-dates/src/main/java/com/baeldung/regexp/datepattern/gregorian/MonthsOf31DaysMatcher.java
rename to java-dates-string/src/main/java/com/baeldung/regexp/datepattern/gregorian/MonthsOf31DaysMatcher.java
diff --git a/java-dates/src/main/java/com/baeldung/regexp/datepattern/optmization/OptimizedMatcher.java b/java-dates-string/src/main/java/com/baeldung/regexp/datepattern/optmization/OptimizedMatcher.java
similarity index 100%
rename from java-dates/src/main/java/com/baeldung/regexp/datepattern/optmization/OptimizedMatcher.java
rename to java-dates-string/src/main/java/com/baeldung/regexp/datepattern/optmization/OptimizedMatcher.java
diff --git a/java-dates/src/main/java/com/baeldung/timezonedisplay/TimezoneDisplay.java b/java-dates-string/src/main/java/com/baeldung/timezonedisplay/TimezoneDisplay.java
similarity index 100%
rename from java-dates/src/main/java/com/baeldung/timezonedisplay/TimezoneDisplay.java
rename to java-dates-string/src/main/java/com/baeldung/timezonedisplay/TimezoneDisplay.java
diff --git a/java-dates/src/main/java/com/baeldung/timezonedisplay/TimezoneDisplayApp.java b/java-dates-string/src/main/java/com/baeldung/timezonedisplay/TimezoneDisplayApp.java
similarity index 100%
rename from java-dates/src/main/java/com/baeldung/timezonedisplay/TimezoneDisplayApp.java
rename to java-dates-string/src/main/java/com/baeldung/timezonedisplay/TimezoneDisplayApp.java
diff --git a/java-dates/src/main/java/com/baeldung/timezonedisplay/TimezoneDisplayJava7.java b/java-dates-string/src/main/java/com/baeldung/timezonedisplay/TimezoneDisplayJava7.java
similarity index 100%
rename from java-dates/src/main/java/com/baeldung/timezonedisplay/TimezoneDisplayJava7.java
rename to java-dates-string/src/main/java/com/baeldung/timezonedisplay/TimezoneDisplayJava7.java
diff --git a/java-dates/src/main/java/com/baeldung/timezonedisplay/TimezoneDisplayJava7App.java b/java-dates-string/src/main/java/com/baeldung/timezonedisplay/TimezoneDisplayJava7App.java
similarity index 100%
rename from java-dates/src/main/java/com/baeldung/timezonedisplay/TimezoneDisplayJava7App.java
rename to java-dates-string/src/main/java/com/baeldung/timezonedisplay/TimezoneDisplayJava7App.java
diff --git a/java-dates/src/main/java/com/baeldung/zoneddatetime/OffsetDateTimeExample.java b/java-dates-string/src/main/java/com/baeldung/zonedatetime/OffsetDateTimeExample.java
similarity index 89%
rename from java-dates/src/main/java/com/baeldung/zoneddatetime/OffsetDateTimeExample.java
rename to java-dates-string/src/main/java/com/baeldung/zonedatetime/OffsetDateTimeExample.java
index fb92eb8d0d..90077795f0 100644
--- a/java-dates/src/main/java/com/baeldung/zoneddatetime/OffsetDateTimeExample.java
+++ b/java-dates-string/src/main/java/com/baeldung/zonedatetime/OffsetDateTimeExample.java
@@ -1,4 +1,4 @@
-package com.baeldung.zoneddatetime;
+package com.baeldung.zonedatetime;
import java.time.OffsetDateTime;
import java.time.ZoneOffset;
diff --git a/java-dates/src/main/java/com/baeldung/zoneddatetime/OffsetTimeExample.java b/java-dates-string/src/main/java/com/baeldung/zonedatetime/OffsetTimeExample.java
similarity index 89%
rename from java-dates/src/main/java/com/baeldung/zoneddatetime/OffsetTimeExample.java
rename to java-dates-string/src/main/java/com/baeldung/zonedatetime/OffsetTimeExample.java
index 58e2d4d5ad..e280d365c2 100644
--- a/java-dates/src/main/java/com/baeldung/zoneddatetime/OffsetTimeExample.java
+++ b/java-dates-string/src/main/java/com/baeldung/zonedatetime/OffsetTimeExample.java
@@ -1,4 +1,4 @@
-package com.baeldung.zoneddatetime;
+package com.baeldung.zonedatetime;
import java.time.OffsetTime;
import java.time.ZoneOffset;
diff --git a/java-dates/src/main/java/com/baeldung/zoneddatetime/ZoneDateTimeExample.java b/java-dates-string/src/main/java/com/baeldung/zonedatetime/ZoneDateTimeExample.java
similarity index 93%
rename from java-dates/src/main/java/com/baeldung/zoneddatetime/ZoneDateTimeExample.java
rename to java-dates-string/src/main/java/com/baeldung/zonedatetime/ZoneDateTimeExample.java
index b54b8c5225..a0dd304876 100644
--- a/java-dates/src/main/java/com/baeldung/zoneddatetime/ZoneDateTimeExample.java
+++ b/java-dates-string/src/main/java/com/baeldung/zonedatetime/ZoneDateTimeExample.java
@@ -1,4 +1,4 @@
-package com.baeldung.zoneddatetime;
+package com.baeldung.zonedatetime;
import java.time.ZoneId;
import java.time.ZonedDateTime;
diff --git a/java-dates-2/src/test/java/com/baeldung/date/validation/DateValidatorUsingApacheValidatorUnitTest.java b/java-dates-string/src/test/java/com/baeldung/date/validation/DateValidatorUsingApacheValidatorUnitTest.java
similarity index 100%
rename from java-dates-2/src/test/java/com/baeldung/date/validation/DateValidatorUsingApacheValidatorUnitTest.java
rename to java-dates-string/src/test/java/com/baeldung/date/validation/DateValidatorUsingApacheValidatorUnitTest.java
diff --git a/java-dates-2/src/test/java/com/baeldung/date/validation/DateValidatorUsingDateFormatUnitTest.java b/java-dates-string/src/test/java/com/baeldung/date/validation/DateValidatorUsingDateFormatUnitTest.java
similarity index 100%
rename from java-dates-2/src/test/java/com/baeldung/date/validation/DateValidatorUsingDateFormatUnitTest.java
rename to java-dates-string/src/test/java/com/baeldung/date/validation/DateValidatorUsingDateFormatUnitTest.java
diff --git a/java-dates-2/src/test/java/com/baeldung/date/validation/DateValidatorUsingDateTimeFormatterUnitTest.java b/java-dates-string/src/test/java/com/baeldung/date/validation/DateValidatorUsingDateTimeFormatterUnitTest.java
similarity index 100%
rename from java-dates-2/src/test/java/com/baeldung/date/validation/DateValidatorUsingDateTimeFormatterUnitTest.java
rename to java-dates-string/src/test/java/com/baeldung/date/validation/DateValidatorUsingDateTimeFormatterUnitTest.java
diff --git a/java-dates-2/src/test/java/com/baeldung/date/validation/DateValidatorUsingLocalDateUnitTest.java b/java-dates-string/src/test/java/com/baeldung/date/validation/DateValidatorUsingLocalDateUnitTest.java
similarity index 100%
rename from java-dates-2/src/test/java/com/baeldung/date/validation/DateValidatorUsingLocalDateUnitTest.java
rename to java-dates-string/src/test/java/com/baeldung/date/validation/DateValidatorUsingLocalDateUnitTest.java
diff --git a/java-dates/src/test/java/com/baeldung/datetime/DateTimeFormatterUnitTest.java b/java-dates-string/src/test/java/com/baeldung/datetime/DateTimeFormatterUnitTest.java
similarity index 100%
rename from java-dates/src/test/java/com/baeldung/datetime/DateTimeFormatterUnitTest.java
rename to java-dates-string/src/test/java/com/baeldung/datetime/DateTimeFormatterUnitTest.java
diff --git a/java-dates/src/test/java/com/baeldung/regexp/datepattern/FormattedDateMatcherUnitTest.java b/java-dates-string/src/test/java/com/baeldung/regexp/datepattern/FormattedDateMatcherUnitTest.java
similarity index 100%
rename from java-dates/src/test/java/com/baeldung/regexp/datepattern/FormattedDateMatcherUnitTest.java
rename to java-dates-string/src/test/java/com/baeldung/regexp/datepattern/FormattedDateMatcherUnitTest.java
diff --git a/java-dates/src/test/java/com/baeldung/regexp/datepattern/RangedDateMatcherUnitTest.java b/java-dates-string/src/test/java/com/baeldung/regexp/datepattern/RangedDateMatcherUnitTest.java
similarity index 100%
rename from java-dates/src/test/java/com/baeldung/regexp/datepattern/RangedDateMatcherUnitTest.java
rename to java-dates-string/src/test/java/com/baeldung/regexp/datepattern/RangedDateMatcherUnitTest.java
diff --git a/java-dates/src/test/java/com/baeldung/regexp/datepattern/gregorian/February29thMatcherUnitTest.java b/java-dates-string/src/test/java/com/baeldung/regexp/datepattern/gregorian/February29thMatcherUnitTest.java
similarity index 100%
rename from java-dates/src/test/java/com/baeldung/regexp/datepattern/gregorian/February29thMatcherUnitTest.java
rename to java-dates-string/src/test/java/com/baeldung/regexp/datepattern/gregorian/February29thMatcherUnitTest.java
diff --git a/java-dates/src/test/java/com/baeldung/regexp/datepattern/gregorian/FebruaryGeneralMatcherUnitTest.java b/java-dates-string/src/test/java/com/baeldung/regexp/datepattern/gregorian/FebruaryGeneralMatcherUnitTest.java
similarity index 100%
rename from java-dates/src/test/java/com/baeldung/regexp/datepattern/gregorian/FebruaryGeneralMatcherUnitTest.java
rename to java-dates-string/src/test/java/com/baeldung/regexp/datepattern/gregorian/FebruaryGeneralMatcherUnitTest.java
diff --git a/java-dates/src/test/java/com/baeldung/regexp/datepattern/gregorian/GregorianDateMatcherUnitTest.java b/java-dates-string/src/test/java/com/baeldung/regexp/datepattern/gregorian/GregorianDateMatcherUnitTest.java
similarity index 100%
rename from java-dates/src/test/java/com/baeldung/regexp/datepattern/gregorian/GregorianDateMatcherUnitTest.java
rename to java-dates-string/src/test/java/com/baeldung/regexp/datepattern/gregorian/GregorianDateMatcherUnitTest.java
diff --git a/java-dates/src/test/java/com/baeldung/regexp/datepattern/gregorian/MonthsOf30DaysMatcherUnitTest.java b/java-dates-string/src/test/java/com/baeldung/regexp/datepattern/gregorian/MonthsOf30DaysMatcherUnitTest.java
similarity index 100%
rename from java-dates/src/test/java/com/baeldung/regexp/datepattern/gregorian/MonthsOf30DaysMatcherUnitTest.java
rename to java-dates-string/src/test/java/com/baeldung/regexp/datepattern/gregorian/MonthsOf30DaysMatcherUnitTest.java
diff --git a/java-dates/src/test/java/com/baeldung/regexp/datepattern/gregorian/MonthsOf31DaysMatcherUnitTest.java b/java-dates-string/src/test/java/com/baeldung/regexp/datepattern/gregorian/MonthsOf31DaysMatcherUnitTest.java
similarity index 100%
rename from java-dates/src/test/java/com/baeldung/regexp/datepattern/gregorian/MonthsOf31DaysMatcherUnitTest.java
rename to java-dates-string/src/test/java/com/baeldung/regexp/datepattern/gregorian/MonthsOf31DaysMatcherUnitTest.java
diff --git a/java-dates/src/test/java/com/baeldung/regexp/datepattern/gregorian/testhelper/GregorianDateTestHelper.java b/java-dates-string/src/test/java/com/baeldung/regexp/datepattern/gregorian/testhelper/GregorianDateTestHelper.java
similarity index 100%
rename from java-dates/src/test/java/com/baeldung/regexp/datepattern/gregorian/testhelper/GregorianDateTestHelper.java
rename to java-dates-string/src/test/java/com/baeldung/regexp/datepattern/gregorian/testhelper/GregorianDateTestHelper.java
diff --git a/java-dates/src/test/java/com/baeldung/simpledateformat/SimpleDateFormatUnitTest.java b/java-dates-string/src/test/java/com/baeldung/simpledateformat/SimpleDateFormatUnitTest.java
similarity index 100%
rename from java-dates/src/test/java/com/baeldung/simpledateformat/SimpleDateFormatUnitTest.java
rename to java-dates-string/src/test/java/com/baeldung/simpledateformat/SimpleDateFormatUnitTest.java
diff --git a/java-dates/src/test/java/com/baeldung/timestamp/StringToTimestampConverterUnitTest.java b/java-dates-string/src/test/java/com/baeldung/timestamp/StringToTimestampConverterUnitTest.java
similarity index 100%
rename from java-dates/src/test/java/com/baeldung/timestamp/StringToTimestampConverterUnitTest.java
rename to java-dates-string/src/test/java/com/baeldung/timestamp/StringToTimestampConverterUnitTest.java
diff --git a/java-dates/src/test/java/com/baeldung/timestamp/TimestampToStringConverterTest.java b/java-dates-string/src/test/java/com/baeldung/timestamp/TimestampToStringConverterTest.java
similarity index 100%
rename from java-dates/src/test/java/com/baeldung/timestamp/TimestampToStringConverterTest.java
rename to java-dates-string/src/test/java/com/baeldung/timestamp/TimestampToStringConverterTest.java
diff --git a/java-dates/src/test/java/com/baeldung/zoneddatetime/OffsetDateTimeExampleUnitTest.java b/java-dates-string/src/test/java/com/baeldung/zonedatetime/OffsetDateTimeExampleUnitTest.java
similarity index 93%
rename from java-dates/src/test/java/com/baeldung/zoneddatetime/OffsetDateTimeExampleUnitTest.java
rename to java-dates-string/src/test/java/com/baeldung/zonedatetime/OffsetDateTimeExampleUnitTest.java
index a08d3737cd..7634ff1572 100644
--- a/java-dates/src/test/java/com/baeldung/zoneddatetime/OffsetDateTimeExampleUnitTest.java
+++ b/java-dates-string/src/test/java/com/baeldung/zonedatetime/OffsetDateTimeExampleUnitTest.java
@@ -1,4 +1,4 @@
-package com.baeldung.zoneddatetime;
+package com.baeldung.zonedatetime;
import static org.junit.Assert.assertTrue;
diff --git a/java-dates/src/test/java/com/baeldung/zoneddatetime/OffsetTimeExampleUnitTest.java b/java-dates-string/src/test/java/com/baeldung/zonedatetime/OffsetTimeExampleUnitTest.java
similarity index 93%
rename from java-dates/src/test/java/com/baeldung/zoneddatetime/OffsetTimeExampleUnitTest.java
rename to java-dates-string/src/test/java/com/baeldung/zonedatetime/OffsetTimeExampleUnitTest.java
index 488f934179..6134e48f70 100644
--- a/java-dates/src/test/java/com/baeldung/zoneddatetime/OffsetTimeExampleUnitTest.java
+++ b/java-dates-string/src/test/java/com/baeldung/zonedatetime/OffsetTimeExampleUnitTest.java
@@ -1,4 +1,4 @@
-package com.baeldung.zoneddatetime;
+package com.baeldung.zonedatetime;
import static org.junit.Assert.assertTrue;
diff --git a/java-dates/src/test/java/com/baeldung/zoneddatetime/ZoneDateTimeExampleUnitTest.java b/java-dates-string/src/test/java/com/baeldung/zonedatetime/ZoneDateTimeExampleUnitTest.java
similarity index 96%
rename from java-dates/src/test/java/com/baeldung/zoneddatetime/ZoneDateTimeExampleUnitTest.java
rename to java-dates-string/src/test/java/com/baeldung/zonedatetime/ZoneDateTimeExampleUnitTest.java
index e78ff3e3fd..cc19055beb 100644
--- a/java-dates/src/test/java/com/baeldung/zoneddatetime/ZoneDateTimeExampleUnitTest.java
+++ b/java-dates-string/src/test/java/com/baeldung/zonedatetime/ZoneDateTimeExampleUnitTest.java
@@ -1,4 +1,4 @@
-package com.baeldung.zoneddatetime;
+package com.baeldung.zonedatetime;
import static org.junit.Assert.assertTrue;
diff --git a/java-dates/src/test/java/com/baeldung/zoneddatetime/ZonedDateTimeUnitTest.java b/java-dates-string/src/test/java/com/baeldung/zonedatetime/ZonedDateTimeUnitTest.java
similarity index 98%
rename from java-dates/src/test/java/com/baeldung/zoneddatetime/ZonedDateTimeUnitTest.java
rename to java-dates-string/src/test/java/com/baeldung/zonedatetime/ZonedDateTimeUnitTest.java
index 65f63bc787..150983c61b 100644
--- a/java-dates/src/test/java/com/baeldung/zoneddatetime/ZonedDateTimeUnitTest.java
+++ b/java-dates-string/src/test/java/com/baeldung/zonedatetime/ZonedDateTimeUnitTest.java
@@ -1,4 +1,4 @@
-package com.baeldung.zoneddatetime;
+package com.baeldung.zonedatetime;
import static org.junit.jupiter.api.Assertions.assertThrows;
diff --git a/java-dates/README.md b/java-dates/README.md
index 7da309924d..ef4cffe6d8 100644
--- a/java-dates/README.md
+++ b/java-dates/README.md
@@ -7,14 +7,11 @@
- [Handling Daylight Savings Time in Java](http://www.baeldung.com/java-daylight-savings)
- [Period and Duration in Java](http://www.baeldung.com/java-period-duration)
- [Difference Between Two Dates in Java](http://www.baeldung.com/java-date-difference)
-- [RegEx for matching Date Pattern in Java](http://www.baeldung.com/java-date-regular-expressions)
- [Migrating to the New Java 8 Date Time API](http://www.baeldung.com/migrating-to-java-8-date-time-api)
- [Introduction to the Java 8 Date/Time API](http://www.baeldung.com/java-8-date-time-intro)
- [Get the Current Date, Time and Timestamp in Java 8](http://www.baeldung.com/current-date-time-and-timestamp-in-java-8)
- [Get Date Without Time in Java](http://www.baeldung.com/java-date-without-time)
- [How to Get All Dates Between Two Dates?](http://www.baeldung.com/java-between-dates)
-- [Convert Date to LocalDate or LocalDateTime and Back](http://www.baeldung.com/java-date-to-localdate-and-localdatetime)
-- [Display All Time Zones With GMT And UTC in Java](http://www.baeldung.com/java-time-zones)
- [Extracting Year, Month and Day from Date in Java](http://www.baeldung.com/java-year-month-day)
- [Guide to java.util.GregorianCalendar](http://www.baeldung.com/java-gregorian-calendar)
- [Measure Elapsed Time in Java](http://www.baeldung.com/java-measure-elapsed-time)
@@ -22,11 +19,6 @@
- [Calculate Age in Java](http://www.baeldung.com/java-get-age)
- [Increment Date in Java](http://www.baeldung.com/java-increment-date)
- [Add Hours To a Date In Java](http://www.baeldung.com/java-add-hours-date)
-- [Guide to DateTimeFormatter](https://www.baeldung.com/java-datetimeformatter)
-- [Format ZonedDateTime to String](https://www.baeldung.com/java-format-zoned-datetime-string)
-- [Convert Between java.time.Instant and java.sql.Timestamp](https://www.baeldung.com/java-time-instant-to-java-sql-timestamp)
-- [Convert between String and Timestamp](https://www.baeldung.com/java-string-to-timestamp)
-- [A Guide to SimpleDateFormat](https://www.baeldung.com/java-simple-date-format)
- [ZoneOffset in Java](https://www.baeldung.com/java-zone-offset)
- [Differences Between ZonedDateTime and OffsetDateTime](https://www.baeldung.com/java-zoneddatetime-offsetdatetime)
- [Introduction to Joda-Time](http://www.baeldung.com/joda-time)
diff --git a/java-dates/pom.xml b/java-dates/pom.xml
index 3fddf3f0f8..761ebd71a6 100644
--- a/java-dates/pom.xml
+++ b/java-dates/pom.xml
@@ -25,12 +25,6 @@
log4j
${log4j.version}
-
- org.projectlombok
- lombok
- ${lombok.version}
- provided
-
org.assertj
diff --git a/pom.xml b/pom.xml
index c3f3a62da1..52a5922273 100644
--- a/pom.xml
+++ b/pom.xml
@@ -467,8 +467,10 @@
java-collections-maps
java-collections-maps-2
java-jdi
-
-
+
java-lite
java-math