diff --git a/pom.xml b/pom.xml
index 1163bfdf04..3e79c8c4b7 100644
--- a/pom.xml
+++ b/pom.xml
@@ -60,6 +60,7 @@
6.1.0.jre8
6.1.14
3.1.12
+ 3.0.0
0.13
3.4.14
@@ -589,6 +590,40 @@
+
+ org.apache.maven.plugins
+ maven-checkstyle-plugin
+ ${checkstyle.version}
+
+
+ com.puppycrawl.tools
+ checkstyle
+ 8.18
+
+
+
+ true
+ UTF-8
+ style/checkstyle.xml
+ style/checkstyle-suppressions.xml
+ checkstyle.suppressions.file
+ true
+ warning
+ true
+
+ ${project.build.sourceDirectory}
+
+ **\/generated-sources\/
+
+
+
+ compile
+
+ check
+
+
+
+
diff --git a/style/checkstyle-suppressions.xml b/style/checkstyle-suppressions.xml
new file mode 100644
index 0000000000..50cf91015e
--- /dev/null
+++ b/style/checkstyle-suppressions.xml
@@ -0,0 +1,24 @@
+
+
+
+
+
+
+
diff --git a/style/checkstyle.xml b/style/checkstyle.xml
new file mode 100644
index 0000000000..0e23606035
--- /dev/null
+++ b/style/checkstyle.xml
@@ -0,0 +1,254 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+