diff --git a/AbstractClassName/all-examples-in-one/config-all-in-one.xml b/AbstractClassName/all-examples-in-one/config-all-in-one.xml
new file mode 100644
index 000000000..bd04232c8
--- /dev/null
+++ b/AbstractClassName/all-examples-in-one/config-all-in-one.xml
@@ -0,0 +1,51 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/AbstractClassName/all-examples-in-one/list-of-projects.properties b/AbstractClassName/all-examples-in-one/list-of-projects.properties
new file mode 100644
index 000000000..9c343d765
--- /dev/null
+++ b/AbstractClassName/all-examples-in-one/list-of-projects.properties
@@ -0,0 +1,39 @@
+# List of GIT repositories to clone / pull for checking with Checkstyle
+# File format: REPO_NAME|[local|git]|URL|[COMMIT_ID]|[EXCLUDE FOLDERS]
+# Please note that bash comments works in this file
+
+# Few projects that delivers set of unusual Java constructions that shall be correctly handled by AST visitor
+# 'InputAllEscapedUnicodeCharacters' must be skipped because it is too big and slows down JXR
+checkstyle|git|https://github.com/checkstyle/checkstyle.git|master|**/.ci-temp/**/*,**/resources-noncompilable/**/asttreestringprinter/**/*,**/resources-noncompilable/**/filefilters/**/*,**/resources-noncompilable/**/main/**/*,**/resources-noncompilable/**/suppressionsstringprinter/**/*,**/resources-noncompilable/**/gui/**/*,**/resources-noncompilable/**/javadocpropertiesgenerator/**/*,src/test/resources-noncompilable/com/puppycrawl/tools/checkstyle/javaparser/InputJavaParser.java,**/InputAllEscapedUnicodeCharacters.java,**/resources-noncompilable/**/javaparser/InputJavaParser.java,**/resources-noncompilable/**/checks/imports/unusedimports/InputUnusedImportsSingleWordPackage.java,**/resources-noncompilable/**/grammar/java19/*,**/resources-noncompilable/**/treewalker/**/*
+sevntu-checkstyle|git|https://github.com/sevntu-checkstyle/sevntu.checkstyle|master||
+checkstyle-sonar|git|https://github.com/checkstyle/sonar-checkstyle|master||
+
+# we exclude files listed in https://github.com/checkstyle/checkstyle/blob/master/.ci/openjdk17-excluded.files
+openjdk17|git|https://github.com/openjdk/jdk17.git|master|**/test/langtools/jdk/javadoc/doclet/testSupplementary/C.java,**/test/hotspot/jtreg/runtime/exceptionMsgs/methodPrinting/TestPrintingMethods.java,**/test/langtools/tools/javac/MethodParameters/UncommonParamNames.java,**/test/langtools/tools/javac/unicode/UnicodeAtEOL.java,**/test/langtools/tools/javac/unicode/UnicodeCommentDelimiter.java,**/test/langtools/tools/javac/unicode/FirstChar2.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID1.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID5.java,**/test/langtools/tools/javac/unicode/TripleQuote.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID4.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID2.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID6.java,**/test/langtools/tools/javac/unicode/NonasciiDigit.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID3.java,**/test/langtools/tools/javac/parser/8081769/T8081769.java,**/test/langtools/tools/javac/parser/7157165/T7157165.java,**/test/langtools/tools/javac/parser/SingleCommaAnnotationValueFail.java,**/test/langtools/tools/javac/parser/MissingClosingBrace.java,**/test/langtools/tools/javac/parser/T4881269.java,**/test/langtools/tools/javac/parser/ErroneousParameters.java,**/test/langtools/tools/javac/failover/FailOver15.java,**/test/langtools/tools/javac/failover/FailOver01.java,**/test/langtools/tools/javac/ExtendArray.java,**/test/langtools/tools/javac/generics/6413682/T6413682.java,**/test/langtools/tools/javac/annotations/neg/Z13.java,**/test/langtools/tools/javac/annotations/neg/Z8.java,**/test/langtools/tools/javac/annotations/neg/NoStatic.java,**/test/langtools/tools/javac/annotations/neg/Syntax1.java,**/test/langtools/tools/javac/annotations/neg/Z9.java,**/test/langtools/tools/javac/annotations/neg/AnnComma.java,**/test/langtools/tools/javac/annotations/neg/Z3.java,**/test/langtools/tools/javac/annotations/neg/Z2.java,**/test/langtools/tools/javac/annotations/neg/Z14.java,**/test/langtools/tools/javac/annotations/neg/Z5.java,**/test/langtools/tools/javac/annotations/neg/NoDefault.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/OldArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/IndexArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedMethodSelectorTest.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/target/DotClass.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/target/IncompleteArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedClassExpr.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedImport.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/BadCast.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedPackage2.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/StaticFields.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/IncompleteArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/6967002/T6967002.java,**/test/langtools/tools/javac/BadAnnotation.java,**/test/langtools/tools/javac/ExtraneousEquals.java,**/test/langtools/tools/javac/ImportUnnamed/foo/A.java,**/test/langtools/tools/javac/processing/6994946/SyntaxErrorTest.java,**/test/langtools/tools/javac/processing/errors/TestParseErrors/ParseErrors.java,**/test/langtools/tools/javac/UncaughtOverflow.java,**/test/langtools/tools/javac/6440583/A.java,**/test/langtools/tools/javac/EOI.java,**/test/langtools/tools/javac/var_implicit_lambda/VarInImplicitLambdaNegTest01.java,**/test/langtools/tools/javac/SwitchScope.java,**/test/langtools/tools/javac/incompleteStatements/T8000484.java,**/test/langtools/tools/javac/quid/T6999438.java,**/test/langtools/tools/javac/T8175198/AnnotationsAndFormalParamsTest.java,**/test/langtools/tools/javac/Parens3.java,**/test/langtools/tools/javac/T8185983/RejectTypeArgsOnSelectTest.java,**/test/langtools/tools/javac/TryWithResources/TwrForVariable2.java,**/test/langtools/tools/javac/TryWithResources/ResDeclOutsideTry.java,**/test/langtools/tools/javac/TryWithResources/PlainTry.java,**/test/langtools/tools/javac/TryWithResources/BadTwrSyntax.java,**/test/langtools/tools/javac/enum/EnumMembersOrder.java,**/test/langtools/tools/javac/enum/EnumAsIdentifier.java,**/test/langtools/tools/javac/rawDiags/Error.java,**/test/langtools/tools/javac/8245153/T8245153.java,**/test/langtools/tools/javac/lambda/lambdaExpression/InvalidExpression1.java,**/test/langtools/tools/javac/lambda/8131742/T8131742.java,**/test/langtools/tools/javac/lambda/funcInterfaces/LambdaTest1_neg1.java,**/test/langtools/tools/javac/switchextra/SwitchStatementBroken2.java,**/test/langtools/tools/javac/switchextra/SwitchStatementBroken.java,**/test/langtools/tools/javac/Digits.java,**/test/langtools/tools/javac/LabeledDeclaration.java,**/test/langtools/tools/javac/DefiniteAssignment/ConstantInfiniteWhile.java,**/test/langtools/tools/javac/BadHexConstant.java,**/test/langtools/tools/javac/diags/examples/IllegalStartOfExpr.java,**/test/langtools/tools/javac/diags/examples/RecordsCantDeclareComponentModifiers.java,**/test/langtools/tools/javac/diags/examples/TryWithoutCatchOrFinallyOrResource.java,**/test/langtools/tools/javac/diags/examples/RecordsComponentsCanNotDeclareCStyleArrays.java,**/test/langtools/tools/javac/diags/examples/ExpectedModule.java,**/test/langtools/tools/javac/diags/examples/EnumAsIdentifier2.java,**/test/langtools/tools/javac/diags/examples/TextBlockCloseDelimiter.java,**/test/langtools/tools/javac/diags/examples/IllegalNonAsciiDigit.java,**/test/langtools/tools/javac/diags/examples/IntNumberTooLarge.java,**/test/langtools/tools/javac/diags/examples/VarargsAndReceiver.java,**/test/langtools/tools/javac/diags/examples/EmptyCharLiteral.java,**/test/langtools/tools/javac/diags/examples/IncorrectRecordDeclaration.java,**/test/langtools/tools/javac/diags/examples/PrematureEOF.java,**/test/langtools/tools/javac/diags/examples/InvalidBinaryNumber.java,**/test/langtools/tools/javac/diags/examples/InvalidHexNumber.java,**/test/langtools/tools/javac/diags/examples/CallMustBeFirst.java,**/test/langtools/tools/javac/diags/examples/ThrowsNotAllowedInAnno.java,**/test/langtools/tools/javac/diags/examples/IllegalStartOfType.java,**/test/langtools/tools/javac/diags/examples/TryWithResourcesExprNeedsVar.java,**/test/langtools/tools/javac/diags/examples/Expected2.java,**/test/langtools/tools/javac/diags/examples/FinallyWithoutTry.java,**/test/langtools/tools/javac/diags/examples/IntfAnnotationsCantHaveTypeParams.java,**/test/langtools/tools/javac/diags/examples/IllegalLineEndInCharLit.java,**/test/langtools/tools/javac/diags/examples/UnclosedStringLiteral.java,**/test/langtools/tools/javac/diags/examples/Expected3.java,**/test/langtools/tools/javac/diags/examples/DefaultAllowedInIntfAnnotationMember.java,**/test/langtools/tools/javac/diags/examples/AnnotationMustBeNameValue.java,**/test/langtools/tools/javac/diags/examples/Orphaned.java,**/test/langtools/tools/javac/diags/examples/ArrayDimMissing.java,**/test/langtools/tools/javac/diags/examples/NotAllowedClass.java,**/test/langtools/tools/javac/diags/examples/ExplicitImplicitLambda.java,**/test/langtools/tools/javac/diags/examples/IntfAnnotationsCantHaveParams.java,**/test/langtools/tools/javac/diags/examples/ProcessorWrongType/ProcessorWrongType.java,**/test/langtools/tools/javac/diags/examples/ForeachBadInitialization.java,**/test/langtools/tools/javac/diags/examples/EnumConstantNotExpected.java,**/test/langtools/tools/javac/diags/examples/SwitchMixingCaseTypes.java,**/test/langtools/tools/javac/diags/examples/IllegalEscapeChar.java,**/test/langtools/tools/javac/diags/examples/IllegalChar.java,**/test/langtools/tools/javac/diags/examples/VarargsMustBeLast.java,**/test/langtools/tools/javac/diags/examples/IllegalDot.java,**/test/langtools/tools/javac/diags/examples/IllegalUnderscore.java,**/test/langtools/tools/javac/diags/examples/NotAllowedVariable.java,**/test/langtools/tools/javac/diags/examples/SwitchCaseUnexpectedStatement.java,**/test/langtools/tools/javac/diags/examples/UnclosedCharLiteral.java,**/test/langtools/tools/javac/diags/examples/AssertAsIdentifier2.java,**/test/langtools/tools/javac/diags/examples/ThisAsIdentifier.java,**/test/langtools/tools/javac/diags/examples/ModuleDeclSbInModuleInfoJava.java,**/test/langtools/tools/javac/diags/examples/DotClassExpected.java,**/test/langtools/tools/javac/diags/examples/CantExtendIntfAnno.java,**/test/langtools/tools/javac/diags/examples/IntfAnnotationCantHaveTypeParams.java,**/test/langtools/tools/javac/diags/examples/CatchWithoutTry.java,**/test/langtools/tools/javac/diags/examples/MalformedFpLit.java,**/test/langtools/tools/javac/diags/examples/IdentifierExpected.java,**/test/langtools/tools/javac/diags/examples/InitializerNotAllowed.java,**/test/langtools/tools/javac/diags/examples/IllegalArrayCreation.java,**/test/langtools/tools/javac/diags/examples/VarAllOrNothing.java,**/test/langtools/tools/javac/diags/examples/UnclosedComment.java,**/test/langtools/tools/javac/diags/examples/EnumConstantExpected.java,**/test/langtools/tools/javac/diags/examples/IllegalStartOfStmt.java,**/test/langtools/tools/javac/diags/examples/VarInImplicitLambda.java,**/test/langtools/tools/javac/diags/examples/CannotCreateArrayWithTypeArgs.java,**/test/langtools/tools/javac/diags/examples/IllegalAnnotationDeclaration.java,**/test/langtools/tools/javac/diags/examples/ElseWithoutIf.java,**/test/langtools/tools/javac/api/T6265137a.java,**/test/langtools/tools/javac/api/TestGetElementReferenceDataWithErrors.java,**/test/langtools/tools/javac/T8026963/TypeAnnotationsCrashWithErroneousTreeTest.java,**/test/langtools/tools/javac/IllegalAnnotation.java,**/test/langtools/tools/javac/T6882235.java,**/test/langtools/tools/javac/QualifiedAccess/QualifiedAccess_4.java,**/test/langtools/tools/javac/policy/test3/A.java,**/test/langtools/tools/javac/patterns/PatternCaseErrorRecovery.java,**/test/langtools/tools/javac/patterns/NoModifiersOnBinding.java,**/test/langtools/tools/javac/literals/BadBinaryLiterals.java,**/test/langtools/tools/javac/literals/BadUnderscoreLiterals.java,**/test/langtools/tools/javac/literals/T6891079.java,**/test/langtools/tools/javac/T4994049/T4994049.java,**/test/langtools/jdk/javadoc/doclet/testSourceTab/SingleTab/C.java,**/test/langtools/jdk/javadoc/doclet/testSourceTab/DoubleTab/C.java,**/test/langtools/jdk/javadoc/doclet/testUnnamedPackage/src1/BadSource.java,**/test/langtools/jdk/javadoc/tool/6964914/Error.java,**/test/langtools/jdk/javadoc/tool/T4994049/FileWithTabs.java,**/test/langtools/tools/javac/annotations/neg/pkg/package-info.java|
+guava|git|https://github.com/google/guava|v28.2||
+
+spotbugs|git|https://github.com/spotbugs/spotbugs|3.1.2||
+pmd|git|https://github.com/pmd/pmd|pmd_releases/6.21.0|**/pmd/pmd-java/src/test/**/*,**/pmd/cpd/files/*
+spoon|git|https://github.com/INRIA/spoon.git|spoon-core-10.1.0|**/src/test/resources/**/*
+lombok-ast|git|https://github.com/rzwitserloot/lombok.ast|v0.2|**/lombok-ast/test/**/*
+
+spring-framework|git|https://github.com/spring-projects/spring-framework|v4.1.6.RELEASE||
+hibernate-orm|git|https://github.com/hibernate/hibernate-orm|4.2.19.Final|**/hibernate-orm/documentation/**/*
+elasticsearch|git|https://github.com/elastic/elasticsearch|v1.5.2||
+java-design-patterns|git|https://github.com/iluwatar/java-design-patterns|dd855a376bc025aa61f6816584f79eb9854fe5d7||
+MaterialDesignLibrary|git|https://github.com/navasmdc/MaterialDesignLibrary|1.3||
+Hbase|git|https://github.com/apache/hbase|1.1.0.1||
+Orekit|git|https://github.com/CS-SI/Orekit|8.0.1||
+
+# Those projects are quite old and have lot of legacy code
+apache-ant|git|https://github.com/apache/ant|ANT_194|**/apache-ant/src/tests/**/*,**/apache-ant/src/etc/testcases/
+apache-jsecurity|git|https://github.com/apache/jsecurity|c2ac5b90a467aedb04b52ae50a99e83207d847b3||
+android-launcher|git|https://github.com/android/platform_packages_apps_launcher|android-2.1_r2.1p2||
+apache-struts|git|https://github.com/apache/struts.git|master|**/apache-struts/**/resources/**/*
+
+# Projects which contain a lot of labmda expressions
+infinispan|git|https://github.com/infinispan/infinispan|7.2.5.Final||
+protonpack|git|https://github.com/poetix/protonpack|protonpack-1.7||
+jOOL|git|https://github.com/jOOQ/jOOL|version-0.9.7||
+RxJava|git|https://github.com/ReactiveX/RxJava|v1.0.9||
+Vavr|git|https://github.com/vavr-io/vavr|v0.9.0||
diff --git a/AnnotationLocation/all-examples-in-one/config-all-in-one.xml b/AnnotationLocation/all-examples-in-one/config-all-in-one.xml
new file mode 100644
index 000000000..11a6c90ab
--- /dev/null
+++ b/AnnotationLocation/all-examples-in-one/config-all-in-one.xml
@@ -0,0 +1,58 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/AnnotationLocation/all-examples-in-one/list-of-projects.properties b/AnnotationLocation/all-examples-in-one/list-of-projects.properties
new file mode 100644
index 000000000..9c343d765
--- /dev/null
+++ b/AnnotationLocation/all-examples-in-one/list-of-projects.properties
@@ -0,0 +1,39 @@
+# List of GIT repositories to clone / pull for checking with Checkstyle
+# File format: REPO_NAME|[local|git]|URL|[COMMIT_ID]|[EXCLUDE FOLDERS]
+# Please note that bash comments works in this file
+
+# Few projects that delivers set of unusual Java constructions that shall be correctly handled by AST visitor
+# 'InputAllEscapedUnicodeCharacters' must be skipped because it is too big and slows down JXR
+checkstyle|git|https://github.com/checkstyle/checkstyle.git|master|**/.ci-temp/**/*,**/resources-noncompilable/**/asttreestringprinter/**/*,**/resources-noncompilable/**/filefilters/**/*,**/resources-noncompilable/**/main/**/*,**/resources-noncompilable/**/suppressionsstringprinter/**/*,**/resources-noncompilable/**/gui/**/*,**/resources-noncompilable/**/javadocpropertiesgenerator/**/*,src/test/resources-noncompilable/com/puppycrawl/tools/checkstyle/javaparser/InputJavaParser.java,**/InputAllEscapedUnicodeCharacters.java,**/resources-noncompilable/**/javaparser/InputJavaParser.java,**/resources-noncompilable/**/checks/imports/unusedimports/InputUnusedImportsSingleWordPackage.java,**/resources-noncompilable/**/grammar/java19/*,**/resources-noncompilable/**/treewalker/**/*
+sevntu-checkstyle|git|https://github.com/sevntu-checkstyle/sevntu.checkstyle|master||
+checkstyle-sonar|git|https://github.com/checkstyle/sonar-checkstyle|master||
+
+# we exclude files listed in https://github.com/checkstyle/checkstyle/blob/master/.ci/openjdk17-excluded.files
+openjdk17|git|https://github.com/openjdk/jdk17.git|master|**/test/langtools/jdk/javadoc/doclet/testSupplementary/C.java,**/test/hotspot/jtreg/runtime/exceptionMsgs/methodPrinting/TestPrintingMethods.java,**/test/langtools/tools/javac/MethodParameters/UncommonParamNames.java,**/test/langtools/tools/javac/unicode/UnicodeAtEOL.java,**/test/langtools/tools/javac/unicode/UnicodeCommentDelimiter.java,**/test/langtools/tools/javac/unicode/FirstChar2.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID1.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID5.java,**/test/langtools/tools/javac/unicode/TripleQuote.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID4.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID2.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID6.java,**/test/langtools/tools/javac/unicode/NonasciiDigit.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID3.java,**/test/langtools/tools/javac/parser/8081769/T8081769.java,**/test/langtools/tools/javac/parser/7157165/T7157165.java,**/test/langtools/tools/javac/parser/SingleCommaAnnotationValueFail.java,**/test/langtools/tools/javac/parser/MissingClosingBrace.java,**/test/langtools/tools/javac/parser/T4881269.java,**/test/langtools/tools/javac/parser/ErroneousParameters.java,**/test/langtools/tools/javac/failover/FailOver15.java,**/test/langtools/tools/javac/failover/FailOver01.java,**/test/langtools/tools/javac/ExtendArray.java,**/test/langtools/tools/javac/generics/6413682/T6413682.java,**/test/langtools/tools/javac/annotations/neg/Z13.java,**/test/langtools/tools/javac/annotations/neg/Z8.java,**/test/langtools/tools/javac/annotations/neg/NoStatic.java,**/test/langtools/tools/javac/annotations/neg/Syntax1.java,**/test/langtools/tools/javac/annotations/neg/Z9.java,**/test/langtools/tools/javac/annotations/neg/AnnComma.java,**/test/langtools/tools/javac/annotations/neg/Z3.java,**/test/langtools/tools/javac/annotations/neg/Z2.java,**/test/langtools/tools/javac/annotations/neg/Z14.java,**/test/langtools/tools/javac/annotations/neg/Z5.java,**/test/langtools/tools/javac/annotations/neg/NoDefault.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/OldArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/IndexArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedMethodSelectorTest.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/target/DotClass.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/target/IncompleteArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedClassExpr.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedImport.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/BadCast.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedPackage2.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/StaticFields.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/IncompleteArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/6967002/T6967002.java,**/test/langtools/tools/javac/BadAnnotation.java,**/test/langtools/tools/javac/ExtraneousEquals.java,**/test/langtools/tools/javac/ImportUnnamed/foo/A.java,**/test/langtools/tools/javac/processing/6994946/SyntaxErrorTest.java,**/test/langtools/tools/javac/processing/errors/TestParseErrors/ParseErrors.java,**/test/langtools/tools/javac/UncaughtOverflow.java,**/test/langtools/tools/javac/6440583/A.java,**/test/langtools/tools/javac/EOI.java,**/test/langtools/tools/javac/var_implicit_lambda/VarInImplicitLambdaNegTest01.java,**/test/langtools/tools/javac/SwitchScope.java,**/test/langtools/tools/javac/incompleteStatements/T8000484.java,**/test/langtools/tools/javac/quid/T6999438.java,**/test/langtools/tools/javac/T8175198/AnnotationsAndFormalParamsTest.java,**/test/langtools/tools/javac/Parens3.java,**/test/langtools/tools/javac/T8185983/RejectTypeArgsOnSelectTest.java,**/test/langtools/tools/javac/TryWithResources/TwrForVariable2.java,**/test/langtools/tools/javac/TryWithResources/ResDeclOutsideTry.java,**/test/langtools/tools/javac/TryWithResources/PlainTry.java,**/test/langtools/tools/javac/TryWithResources/BadTwrSyntax.java,**/test/langtools/tools/javac/enum/EnumMembersOrder.java,**/test/langtools/tools/javac/enum/EnumAsIdentifier.java,**/test/langtools/tools/javac/rawDiags/Error.java,**/test/langtools/tools/javac/8245153/T8245153.java,**/test/langtools/tools/javac/lambda/lambdaExpression/InvalidExpression1.java,**/test/langtools/tools/javac/lambda/8131742/T8131742.java,**/test/langtools/tools/javac/lambda/funcInterfaces/LambdaTest1_neg1.java,**/test/langtools/tools/javac/switchextra/SwitchStatementBroken2.java,**/test/langtools/tools/javac/switchextra/SwitchStatementBroken.java,**/test/langtools/tools/javac/Digits.java,**/test/langtools/tools/javac/LabeledDeclaration.java,**/test/langtools/tools/javac/DefiniteAssignment/ConstantInfiniteWhile.java,**/test/langtools/tools/javac/BadHexConstant.java,**/test/langtools/tools/javac/diags/examples/IllegalStartOfExpr.java,**/test/langtools/tools/javac/diags/examples/RecordsCantDeclareComponentModifiers.java,**/test/langtools/tools/javac/diags/examples/TryWithoutCatchOrFinallyOrResource.java,**/test/langtools/tools/javac/diags/examples/RecordsComponentsCanNotDeclareCStyleArrays.java,**/test/langtools/tools/javac/diags/examples/ExpectedModule.java,**/test/langtools/tools/javac/diags/examples/EnumAsIdentifier2.java,**/test/langtools/tools/javac/diags/examples/TextBlockCloseDelimiter.java,**/test/langtools/tools/javac/diags/examples/IllegalNonAsciiDigit.java,**/test/langtools/tools/javac/diags/examples/IntNumberTooLarge.java,**/test/langtools/tools/javac/diags/examples/VarargsAndReceiver.java,**/test/langtools/tools/javac/diags/examples/EmptyCharLiteral.java,**/test/langtools/tools/javac/diags/examples/IncorrectRecordDeclaration.java,**/test/langtools/tools/javac/diags/examples/PrematureEOF.java,**/test/langtools/tools/javac/diags/examples/InvalidBinaryNumber.java,**/test/langtools/tools/javac/diags/examples/InvalidHexNumber.java,**/test/langtools/tools/javac/diags/examples/CallMustBeFirst.java,**/test/langtools/tools/javac/diags/examples/ThrowsNotAllowedInAnno.java,**/test/langtools/tools/javac/diags/examples/IllegalStartOfType.java,**/test/langtools/tools/javac/diags/examples/TryWithResourcesExprNeedsVar.java,**/test/langtools/tools/javac/diags/examples/Expected2.java,**/test/langtools/tools/javac/diags/examples/FinallyWithoutTry.java,**/test/langtools/tools/javac/diags/examples/IntfAnnotationsCantHaveTypeParams.java,**/test/langtools/tools/javac/diags/examples/IllegalLineEndInCharLit.java,**/test/langtools/tools/javac/diags/examples/UnclosedStringLiteral.java,**/test/langtools/tools/javac/diags/examples/Expected3.java,**/test/langtools/tools/javac/diags/examples/DefaultAllowedInIntfAnnotationMember.java,**/test/langtools/tools/javac/diags/examples/AnnotationMustBeNameValue.java,**/test/langtools/tools/javac/diags/examples/Orphaned.java,**/test/langtools/tools/javac/diags/examples/ArrayDimMissing.java,**/test/langtools/tools/javac/diags/examples/NotAllowedClass.java,**/test/langtools/tools/javac/diags/examples/ExplicitImplicitLambda.java,**/test/langtools/tools/javac/diags/examples/IntfAnnotationsCantHaveParams.java,**/test/langtools/tools/javac/diags/examples/ProcessorWrongType/ProcessorWrongType.java,**/test/langtools/tools/javac/diags/examples/ForeachBadInitialization.java,**/test/langtools/tools/javac/diags/examples/EnumConstantNotExpected.java,**/test/langtools/tools/javac/diags/examples/SwitchMixingCaseTypes.java,**/test/langtools/tools/javac/diags/examples/IllegalEscapeChar.java,**/test/langtools/tools/javac/diags/examples/IllegalChar.java,**/test/langtools/tools/javac/diags/examples/VarargsMustBeLast.java,**/test/langtools/tools/javac/diags/examples/IllegalDot.java,**/test/langtools/tools/javac/diags/examples/IllegalUnderscore.java,**/test/langtools/tools/javac/diags/examples/NotAllowedVariable.java,**/test/langtools/tools/javac/diags/examples/SwitchCaseUnexpectedStatement.java,**/test/langtools/tools/javac/diags/examples/UnclosedCharLiteral.java,**/test/langtools/tools/javac/diags/examples/AssertAsIdentifier2.java,**/test/langtools/tools/javac/diags/examples/ThisAsIdentifier.java,**/test/langtools/tools/javac/diags/examples/ModuleDeclSbInModuleInfoJava.java,**/test/langtools/tools/javac/diags/examples/DotClassExpected.java,**/test/langtools/tools/javac/diags/examples/CantExtendIntfAnno.java,**/test/langtools/tools/javac/diags/examples/IntfAnnotationCantHaveTypeParams.java,**/test/langtools/tools/javac/diags/examples/CatchWithoutTry.java,**/test/langtools/tools/javac/diags/examples/MalformedFpLit.java,**/test/langtools/tools/javac/diags/examples/IdentifierExpected.java,**/test/langtools/tools/javac/diags/examples/InitializerNotAllowed.java,**/test/langtools/tools/javac/diags/examples/IllegalArrayCreation.java,**/test/langtools/tools/javac/diags/examples/VarAllOrNothing.java,**/test/langtools/tools/javac/diags/examples/UnclosedComment.java,**/test/langtools/tools/javac/diags/examples/EnumConstantExpected.java,**/test/langtools/tools/javac/diags/examples/IllegalStartOfStmt.java,**/test/langtools/tools/javac/diags/examples/VarInImplicitLambda.java,**/test/langtools/tools/javac/diags/examples/CannotCreateArrayWithTypeArgs.java,**/test/langtools/tools/javac/diags/examples/IllegalAnnotationDeclaration.java,**/test/langtools/tools/javac/diags/examples/ElseWithoutIf.java,**/test/langtools/tools/javac/api/T6265137a.java,**/test/langtools/tools/javac/api/TestGetElementReferenceDataWithErrors.java,**/test/langtools/tools/javac/T8026963/TypeAnnotationsCrashWithErroneousTreeTest.java,**/test/langtools/tools/javac/IllegalAnnotation.java,**/test/langtools/tools/javac/T6882235.java,**/test/langtools/tools/javac/QualifiedAccess/QualifiedAccess_4.java,**/test/langtools/tools/javac/policy/test3/A.java,**/test/langtools/tools/javac/patterns/PatternCaseErrorRecovery.java,**/test/langtools/tools/javac/patterns/NoModifiersOnBinding.java,**/test/langtools/tools/javac/literals/BadBinaryLiterals.java,**/test/langtools/tools/javac/literals/BadUnderscoreLiterals.java,**/test/langtools/tools/javac/literals/T6891079.java,**/test/langtools/tools/javac/T4994049/T4994049.java,**/test/langtools/jdk/javadoc/doclet/testSourceTab/SingleTab/C.java,**/test/langtools/jdk/javadoc/doclet/testSourceTab/DoubleTab/C.java,**/test/langtools/jdk/javadoc/doclet/testUnnamedPackage/src1/BadSource.java,**/test/langtools/jdk/javadoc/tool/6964914/Error.java,**/test/langtools/jdk/javadoc/tool/T4994049/FileWithTabs.java,**/test/langtools/tools/javac/annotations/neg/pkg/package-info.java|
+guava|git|https://github.com/google/guava|v28.2||
+
+spotbugs|git|https://github.com/spotbugs/spotbugs|3.1.2||
+pmd|git|https://github.com/pmd/pmd|pmd_releases/6.21.0|**/pmd/pmd-java/src/test/**/*,**/pmd/cpd/files/*
+spoon|git|https://github.com/INRIA/spoon.git|spoon-core-10.1.0|**/src/test/resources/**/*
+lombok-ast|git|https://github.com/rzwitserloot/lombok.ast|v0.2|**/lombok-ast/test/**/*
+
+spring-framework|git|https://github.com/spring-projects/spring-framework|v4.1.6.RELEASE||
+hibernate-orm|git|https://github.com/hibernate/hibernate-orm|4.2.19.Final|**/hibernate-orm/documentation/**/*
+elasticsearch|git|https://github.com/elastic/elasticsearch|v1.5.2||
+java-design-patterns|git|https://github.com/iluwatar/java-design-patterns|dd855a376bc025aa61f6816584f79eb9854fe5d7||
+MaterialDesignLibrary|git|https://github.com/navasmdc/MaterialDesignLibrary|1.3||
+Hbase|git|https://github.com/apache/hbase|1.1.0.1||
+Orekit|git|https://github.com/CS-SI/Orekit|8.0.1||
+
+# Those projects are quite old and have lot of legacy code
+apache-ant|git|https://github.com/apache/ant|ANT_194|**/apache-ant/src/tests/**/*,**/apache-ant/src/etc/testcases/
+apache-jsecurity|git|https://github.com/apache/jsecurity|c2ac5b90a467aedb04b52ae50a99e83207d847b3||
+android-launcher|git|https://github.com/android/platform_packages_apps_launcher|android-2.1_r2.1p2||
+apache-struts|git|https://github.com/apache/struts.git|master|**/apache-struts/**/resources/**/*
+
+# Projects which contain a lot of labmda expressions
+infinispan|git|https://github.com/infinispan/infinispan|7.2.5.Final||
+protonpack|git|https://github.com/poetix/protonpack|protonpack-1.7||
+jOOL|git|https://github.com/jOOQ/jOOL|version-0.9.7||
+RxJava|git|https://github.com/ReactiveX/RxJava|v1.0.9||
+Vavr|git|https://github.com/vavr-io/vavr|v0.9.0||
diff --git a/AnnotationOnSameLine/all-examples-in-one/config-all-in-one.xml b/AnnotationOnSameLine/all-examples-in-one/config-all-in-one.xml
new file mode 100644
index 000000000..d62a0e4ca
--- /dev/null
+++ b/AnnotationOnSameLine/all-examples-in-one/config-all-in-one.xml
@@ -0,0 +1,41 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/AnnotationOnSameLine/all-examples-in-one/list-of-projects.properties b/AnnotationOnSameLine/all-examples-in-one/list-of-projects.properties
new file mode 100644
index 000000000..9c343d765
--- /dev/null
+++ b/AnnotationOnSameLine/all-examples-in-one/list-of-projects.properties
@@ -0,0 +1,39 @@
+# List of GIT repositories to clone / pull for checking with Checkstyle
+# File format: REPO_NAME|[local|git]|URL|[COMMIT_ID]|[EXCLUDE FOLDERS]
+# Please note that bash comments works in this file
+
+# Few projects that delivers set of unusual Java constructions that shall be correctly handled by AST visitor
+# 'InputAllEscapedUnicodeCharacters' must be skipped because it is too big and slows down JXR
+checkstyle|git|https://github.com/checkstyle/checkstyle.git|master|**/.ci-temp/**/*,**/resources-noncompilable/**/asttreestringprinter/**/*,**/resources-noncompilable/**/filefilters/**/*,**/resources-noncompilable/**/main/**/*,**/resources-noncompilable/**/suppressionsstringprinter/**/*,**/resources-noncompilable/**/gui/**/*,**/resources-noncompilable/**/javadocpropertiesgenerator/**/*,src/test/resources-noncompilable/com/puppycrawl/tools/checkstyle/javaparser/InputJavaParser.java,**/InputAllEscapedUnicodeCharacters.java,**/resources-noncompilable/**/javaparser/InputJavaParser.java,**/resources-noncompilable/**/checks/imports/unusedimports/InputUnusedImportsSingleWordPackage.java,**/resources-noncompilable/**/grammar/java19/*,**/resources-noncompilable/**/treewalker/**/*
+sevntu-checkstyle|git|https://github.com/sevntu-checkstyle/sevntu.checkstyle|master||
+checkstyle-sonar|git|https://github.com/checkstyle/sonar-checkstyle|master||
+
+# we exclude files listed in https://github.com/checkstyle/checkstyle/blob/master/.ci/openjdk17-excluded.files
+openjdk17|git|https://github.com/openjdk/jdk17.git|master|**/test/langtools/jdk/javadoc/doclet/testSupplementary/C.java,**/test/hotspot/jtreg/runtime/exceptionMsgs/methodPrinting/TestPrintingMethods.java,**/test/langtools/tools/javac/MethodParameters/UncommonParamNames.java,**/test/langtools/tools/javac/unicode/UnicodeAtEOL.java,**/test/langtools/tools/javac/unicode/UnicodeCommentDelimiter.java,**/test/langtools/tools/javac/unicode/FirstChar2.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID1.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID5.java,**/test/langtools/tools/javac/unicode/TripleQuote.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID4.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID2.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID6.java,**/test/langtools/tools/javac/unicode/NonasciiDigit.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID3.java,**/test/langtools/tools/javac/parser/8081769/T8081769.java,**/test/langtools/tools/javac/parser/7157165/T7157165.java,**/test/langtools/tools/javac/parser/SingleCommaAnnotationValueFail.java,**/test/langtools/tools/javac/parser/MissingClosingBrace.java,**/test/langtools/tools/javac/parser/T4881269.java,**/test/langtools/tools/javac/parser/ErroneousParameters.java,**/test/langtools/tools/javac/failover/FailOver15.java,**/test/langtools/tools/javac/failover/FailOver01.java,**/test/langtools/tools/javac/ExtendArray.java,**/test/langtools/tools/javac/generics/6413682/T6413682.java,**/test/langtools/tools/javac/annotations/neg/Z13.java,**/test/langtools/tools/javac/annotations/neg/Z8.java,**/test/langtools/tools/javac/annotations/neg/NoStatic.java,**/test/langtools/tools/javac/annotations/neg/Syntax1.java,**/test/langtools/tools/javac/annotations/neg/Z9.java,**/test/langtools/tools/javac/annotations/neg/AnnComma.java,**/test/langtools/tools/javac/annotations/neg/Z3.java,**/test/langtools/tools/javac/annotations/neg/Z2.java,**/test/langtools/tools/javac/annotations/neg/Z14.java,**/test/langtools/tools/javac/annotations/neg/Z5.java,**/test/langtools/tools/javac/annotations/neg/NoDefault.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/OldArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/IndexArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedMethodSelectorTest.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/target/DotClass.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/target/IncompleteArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedClassExpr.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedImport.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/BadCast.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedPackage2.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/StaticFields.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/IncompleteArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/6967002/T6967002.java,**/test/langtools/tools/javac/BadAnnotation.java,**/test/langtools/tools/javac/ExtraneousEquals.java,**/test/langtools/tools/javac/ImportUnnamed/foo/A.java,**/test/langtools/tools/javac/processing/6994946/SyntaxErrorTest.java,**/test/langtools/tools/javac/processing/errors/TestParseErrors/ParseErrors.java,**/test/langtools/tools/javac/UncaughtOverflow.java,**/test/langtools/tools/javac/6440583/A.java,**/test/langtools/tools/javac/EOI.java,**/test/langtools/tools/javac/var_implicit_lambda/VarInImplicitLambdaNegTest01.java,**/test/langtools/tools/javac/SwitchScope.java,**/test/langtools/tools/javac/incompleteStatements/T8000484.java,**/test/langtools/tools/javac/quid/T6999438.java,**/test/langtools/tools/javac/T8175198/AnnotationsAndFormalParamsTest.java,**/test/langtools/tools/javac/Parens3.java,**/test/langtools/tools/javac/T8185983/RejectTypeArgsOnSelectTest.java,**/test/langtools/tools/javac/TryWithResources/TwrForVariable2.java,**/test/langtools/tools/javac/TryWithResources/ResDeclOutsideTry.java,**/test/langtools/tools/javac/TryWithResources/PlainTry.java,**/test/langtools/tools/javac/TryWithResources/BadTwrSyntax.java,**/test/langtools/tools/javac/enum/EnumMembersOrder.java,**/test/langtools/tools/javac/enum/EnumAsIdentifier.java,**/test/langtools/tools/javac/rawDiags/Error.java,**/test/langtools/tools/javac/8245153/T8245153.java,**/test/langtools/tools/javac/lambda/lambdaExpression/InvalidExpression1.java,**/test/langtools/tools/javac/lambda/8131742/T8131742.java,**/test/langtools/tools/javac/lambda/funcInterfaces/LambdaTest1_neg1.java,**/test/langtools/tools/javac/switchextra/SwitchStatementBroken2.java,**/test/langtools/tools/javac/switchextra/SwitchStatementBroken.java,**/test/langtools/tools/javac/Digits.java,**/test/langtools/tools/javac/LabeledDeclaration.java,**/test/langtools/tools/javac/DefiniteAssignment/ConstantInfiniteWhile.java,**/test/langtools/tools/javac/BadHexConstant.java,**/test/langtools/tools/javac/diags/examples/IllegalStartOfExpr.java,**/test/langtools/tools/javac/diags/examples/RecordsCantDeclareComponentModifiers.java,**/test/langtools/tools/javac/diags/examples/TryWithoutCatchOrFinallyOrResource.java,**/test/langtools/tools/javac/diags/examples/RecordsComponentsCanNotDeclareCStyleArrays.java,**/test/langtools/tools/javac/diags/examples/ExpectedModule.java,**/test/langtools/tools/javac/diags/examples/EnumAsIdentifier2.java,**/test/langtools/tools/javac/diags/examples/TextBlockCloseDelimiter.java,**/test/langtools/tools/javac/diags/examples/IllegalNonAsciiDigit.java,**/test/langtools/tools/javac/diags/examples/IntNumberTooLarge.java,**/test/langtools/tools/javac/diags/examples/VarargsAndReceiver.java,**/test/langtools/tools/javac/diags/examples/EmptyCharLiteral.java,**/test/langtools/tools/javac/diags/examples/IncorrectRecordDeclaration.java,**/test/langtools/tools/javac/diags/examples/PrematureEOF.java,**/test/langtools/tools/javac/diags/examples/InvalidBinaryNumber.java,**/test/langtools/tools/javac/diags/examples/InvalidHexNumber.java,**/test/langtools/tools/javac/diags/examples/CallMustBeFirst.java,**/test/langtools/tools/javac/diags/examples/ThrowsNotAllowedInAnno.java,**/test/langtools/tools/javac/diags/examples/IllegalStartOfType.java,**/test/langtools/tools/javac/diags/examples/TryWithResourcesExprNeedsVar.java,**/test/langtools/tools/javac/diags/examples/Expected2.java,**/test/langtools/tools/javac/diags/examples/FinallyWithoutTry.java,**/test/langtools/tools/javac/diags/examples/IntfAnnotationsCantHaveTypeParams.java,**/test/langtools/tools/javac/diags/examples/IllegalLineEndInCharLit.java,**/test/langtools/tools/javac/diags/examples/UnclosedStringLiteral.java,**/test/langtools/tools/javac/diags/examples/Expected3.java,**/test/langtools/tools/javac/diags/examples/DefaultAllowedInIntfAnnotationMember.java,**/test/langtools/tools/javac/diags/examples/AnnotationMustBeNameValue.java,**/test/langtools/tools/javac/diags/examples/Orphaned.java,**/test/langtools/tools/javac/diags/examples/ArrayDimMissing.java,**/test/langtools/tools/javac/diags/examples/NotAllowedClass.java,**/test/langtools/tools/javac/diags/examples/ExplicitImplicitLambda.java,**/test/langtools/tools/javac/diags/examples/IntfAnnotationsCantHaveParams.java,**/test/langtools/tools/javac/diags/examples/ProcessorWrongType/ProcessorWrongType.java,**/test/langtools/tools/javac/diags/examples/ForeachBadInitialization.java,**/test/langtools/tools/javac/diags/examples/EnumConstantNotExpected.java,**/test/langtools/tools/javac/diags/examples/SwitchMixingCaseTypes.java,**/test/langtools/tools/javac/diags/examples/IllegalEscapeChar.java,**/test/langtools/tools/javac/diags/examples/IllegalChar.java,**/test/langtools/tools/javac/diags/examples/VarargsMustBeLast.java,**/test/langtools/tools/javac/diags/examples/IllegalDot.java,**/test/langtools/tools/javac/diags/examples/IllegalUnderscore.java,**/test/langtools/tools/javac/diags/examples/NotAllowedVariable.java,**/test/langtools/tools/javac/diags/examples/SwitchCaseUnexpectedStatement.java,**/test/langtools/tools/javac/diags/examples/UnclosedCharLiteral.java,**/test/langtools/tools/javac/diags/examples/AssertAsIdentifier2.java,**/test/langtools/tools/javac/diags/examples/ThisAsIdentifier.java,**/test/langtools/tools/javac/diags/examples/ModuleDeclSbInModuleInfoJava.java,**/test/langtools/tools/javac/diags/examples/DotClassExpected.java,**/test/langtools/tools/javac/diags/examples/CantExtendIntfAnno.java,**/test/langtools/tools/javac/diags/examples/IntfAnnotationCantHaveTypeParams.java,**/test/langtools/tools/javac/diags/examples/CatchWithoutTry.java,**/test/langtools/tools/javac/diags/examples/MalformedFpLit.java,**/test/langtools/tools/javac/diags/examples/IdentifierExpected.java,**/test/langtools/tools/javac/diags/examples/InitializerNotAllowed.java,**/test/langtools/tools/javac/diags/examples/IllegalArrayCreation.java,**/test/langtools/tools/javac/diags/examples/VarAllOrNothing.java,**/test/langtools/tools/javac/diags/examples/UnclosedComment.java,**/test/langtools/tools/javac/diags/examples/EnumConstantExpected.java,**/test/langtools/tools/javac/diags/examples/IllegalStartOfStmt.java,**/test/langtools/tools/javac/diags/examples/VarInImplicitLambda.java,**/test/langtools/tools/javac/diags/examples/CannotCreateArrayWithTypeArgs.java,**/test/langtools/tools/javac/diags/examples/IllegalAnnotationDeclaration.java,**/test/langtools/tools/javac/diags/examples/ElseWithoutIf.java,**/test/langtools/tools/javac/api/T6265137a.java,**/test/langtools/tools/javac/api/TestGetElementReferenceDataWithErrors.java,**/test/langtools/tools/javac/T8026963/TypeAnnotationsCrashWithErroneousTreeTest.java,**/test/langtools/tools/javac/IllegalAnnotation.java,**/test/langtools/tools/javac/T6882235.java,**/test/langtools/tools/javac/QualifiedAccess/QualifiedAccess_4.java,**/test/langtools/tools/javac/policy/test3/A.java,**/test/langtools/tools/javac/patterns/PatternCaseErrorRecovery.java,**/test/langtools/tools/javac/patterns/NoModifiersOnBinding.java,**/test/langtools/tools/javac/literals/BadBinaryLiterals.java,**/test/langtools/tools/javac/literals/BadUnderscoreLiterals.java,**/test/langtools/tools/javac/literals/T6891079.java,**/test/langtools/tools/javac/T4994049/T4994049.java,**/test/langtools/jdk/javadoc/doclet/testSourceTab/SingleTab/C.java,**/test/langtools/jdk/javadoc/doclet/testSourceTab/DoubleTab/C.java,**/test/langtools/jdk/javadoc/doclet/testUnnamedPackage/src1/BadSource.java,**/test/langtools/jdk/javadoc/tool/6964914/Error.java,**/test/langtools/jdk/javadoc/tool/T4994049/FileWithTabs.java,**/test/langtools/tools/javac/annotations/neg/pkg/package-info.java|
+guava|git|https://github.com/google/guava|v28.2||
+
+spotbugs|git|https://github.com/spotbugs/spotbugs|3.1.2||
+pmd|git|https://github.com/pmd/pmd|pmd_releases/6.21.0|**/pmd/pmd-java/src/test/**/*,**/pmd/cpd/files/*
+spoon|git|https://github.com/INRIA/spoon.git|spoon-core-10.1.0|**/src/test/resources/**/*
+lombok-ast|git|https://github.com/rzwitserloot/lombok.ast|v0.2|**/lombok-ast/test/**/*
+
+spring-framework|git|https://github.com/spring-projects/spring-framework|v4.1.6.RELEASE||
+hibernate-orm|git|https://github.com/hibernate/hibernate-orm|4.2.19.Final|**/hibernate-orm/documentation/**/*
+elasticsearch|git|https://github.com/elastic/elasticsearch|v1.5.2||
+java-design-patterns|git|https://github.com/iluwatar/java-design-patterns|dd855a376bc025aa61f6816584f79eb9854fe5d7||
+MaterialDesignLibrary|git|https://github.com/navasmdc/MaterialDesignLibrary|1.3||
+Hbase|git|https://github.com/apache/hbase|1.1.0.1||
+Orekit|git|https://github.com/CS-SI/Orekit|8.0.1||
+
+# Those projects are quite old and have lot of legacy code
+apache-ant|git|https://github.com/apache/ant|ANT_194|**/apache-ant/src/tests/**/*,**/apache-ant/src/etc/testcases/
+apache-jsecurity|git|https://github.com/apache/jsecurity|c2ac5b90a467aedb04b52ae50a99e83207d847b3||
+android-launcher|git|https://github.com/android/platform_packages_apps_launcher|android-2.1_r2.1p2||
+apache-struts|git|https://github.com/apache/struts.git|master|**/apache-struts/**/resources/**/*
+
+# Projects which contain a lot of labmda expressions
+infinispan|git|https://github.com/infinispan/infinispan|7.2.5.Final||
+protonpack|git|https://github.com/poetix/protonpack|protonpack-1.7||
+jOOL|git|https://github.com/jOOQ/jOOL|version-0.9.7||
+RxJava|git|https://github.com/ReactiveX/RxJava|v1.0.9||
+Vavr|git|https://github.com/vavr-io/vavr|v0.9.0||
diff --git a/AnnotationUseStyle/all-examples-in-one/config-all-in-one.xml b/AnnotationUseStyle/all-examples-in-one/config-all-in-one.xml
new file mode 100644
index 000000000..5c352b532
--- /dev/null
+++ b/AnnotationUseStyle/all-examples-in-one/config-all-in-one.xml
@@ -0,0 +1,57 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/AnnotationUseStyle/all-examples-in-one/list-of-projects.properties b/AnnotationUseStyle/all-examples-in-one/list-of-projects.properties
new file mode 100644
index 000000000..9c343d765
--- /dev/null
+++ b/AnnotationUseStyle/all-examples-in-one/list-of-projects.properties
@@ -0,0 +1,39 @@
+# List of GIT repositories to clone / pull for checking with Checkstyle
+# File format: REPO_NAME|[local|git]|URL|[COMMIT_ID]|[EXCLUDE FOLDERS]
+# Please note that bash comments works in this file
+
+# Few projects that delivers set of unusual Java constructions that shall be correctly handled by AST visitor
+# 'InputAllEscapedUnicodeCharacters' must be skipped because it is too big and slows down JXR
+checkstyle|git|https://github.com/checkstyle/checkstyle.git|master|**/.ci-temp/**/*,**/resources-noncompilable/**/asttreestringprinter/**/*,**/resources-noncompilable/**/filefilters/**/*,**/resources-noncompilable/**/main/**/*,**/resources-noncompilable/**/suppressionsstringprinter/**/*,**/resources-noncompilable/**/gui/**/*,**/resources-noncompilable/**/javadocpropertiesgenerator/**/*,src/test/resources-noncompilable/com/puppycrawl/tools/checkstyle/javaparser/InputJavaParser.java,**/InputAllEscapedUnicodeCharacters.java,**/resources-noncompilable/**/javaparser/InputJavaParser.java,**/resources-noncompilable/**/checks/imports/unusedimports/InputUnusedImportsSingleWordPackage.java,**/resources-noncompilable/**/grammar/java19/*,**/resources-noncompilable/**/treewalker/**/*
+sevntu-checkstyle|git|https://github.com/sevntu-checkstyle/sevntu.checkstyle|master||
+checkstyle-sonar|git|https://github.com/checkstyle/sonar-checkstyle|master||
+
+# we exclude files listed in https://github.com/checkstyle/checkstyle/blob/master/.ci/openjdk17-excluded.files
+openjdk17|git|https://github.com/openjdk/jdk17.git|master|**/test/langtools/jdk/javadoc/doclet/testSupplementary/C.java,**/test/hotspot/jtreg/runtime/exceptionMsgs/methodPrinting/TestPrintingMethods.java,**/test/langtools/tools/javac/MethodParameters/UncommonParamNames.java,**/test/langtools/tools/javac/unicode/UnicodeAtEOL.java,**/test/langtools/tools/javac/unicode/UnicodeCommentDelimiter.java,**/test/langtools/tools/javac/unicode/FirstChar2.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID1.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID5.java,**/test/langtools/tools/javac/unicode/TripleQuote.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID4.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID2.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID6.java,**/test/langtools/tools/javac/unicode/NonasciiDigit.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID3.java,**/test/langtools/tools/javac/parser/8081769/T8081769.java,**/test/langtools/tools/javac/parser/7157165/T7157165.java,**/test/langtools/tools/javac/parser/SingleCommaAnnotationValueFail.java,**/test/langtools/tools/javac/parser/MissingClosingBrace.java,**/test/langtools/tools/javac/parser/T4881269.java,**/test/langtools/tools/javac/parser/ErroneousParameters.java,**/test/langtools/tools/javac/failover/FailOver15.java,**/test/langtools/tools/javac/failover/FailOver01.java,**/test/langtools/tools/javac/ExtendArray.java,**/test/langtools/tools/javac/generics/6413682/T6413682.java,**/test/langtools/tools/javac/annotations/neg/Z13.java,**/test/langtools/tools/javac/annotations/neg/Z8.java,**/test/langtools/tools/javac/annotations/neg/NoStatic.java,**/test/langtools/tools/javac/annotations/neg/Syntax1.java,**/test/langtools/tools/javac/annotations/neg/Z9.java,**/test/langtools/tools/javac/annotations/neg/AnnComma.java,**/test/langtools/tools/javac/annotations/neg/Z3.java,**/test/langtools/tools/javac/annotations/neg/Z2.java,**/test/langtools/tools/javac/annotations/neg/Z14.java,**/test/langtools/tools/javac/annotations/neg/Z5.java,**/test/langtools/tools/javac/annotations/neg/NoDefault.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/OldArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/IndexArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedMethodSelectorTest.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/target/DotClass.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/target/IncompleteArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedClassExpr.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedImport.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/BadCast.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedPackage2.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/StaticFields.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/IncompleteArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/6967002/T6967002.java,**/test/langtools/tools/javac/BadAnnotation.java,**/test/langtools/tools/javac/ExtraneousEquals.java,**/test/langtools/tools/javac/ImportUnnamed/foo/A.java,**/test/langtools/tools/javac/processing/6994946/SyntaxErrorTest.java,**/test/langtools/tools/javac/processing/errors/TestParseErrors/ParseErrors.java,**/test/langtools/tools/javac/UncaughtOverflow.java,**/test/langtools/tools/javac/6440583/A.java,**/test/langtools/tools/javac/EOI.java,**/test/langtools/tools/javac/var_implicit_lambda/VarInImplicitLambdaNegTest01.java,**/test/langtools/tools/javac/SwitchScope.java,**/test/langtools/tools/javac/incompleteStatements/T8000484.java,**/test/langtools/tools/javac/quid/T6999438.java,**/test/langtools/tools/javac/T8175198/AnnotationsAndFormalParamsTest.java,**/test/langtools/tools/javac/Parens3.java,**/test/langtools/tools/javac/T8185983/RejectTypeArgsOnSelectTest.java,**/test/langtools/tools/javac/TryWithResources/TwrForVariable2.java,**/test/langtools/tools/javac/TryWithResources/ResDeclOutsideTry.java,**/test/langtools/tools/javac/TryWithResources/PlainTry.java,**/test/langtools/tools/javac/TryWithResources/BadTwrSyntax.java,**/test/langtools/tools/javac/enum/EnumMembersOrder.java,**/test/langtools/tools/javac/enum/EnumAsIdentifier.java,**/test/langtools/tools/javac/rawDiags/Error.java,**/test/langtools/tools/javac/8245153/T8245153.java,**/test/langtools/tools/javac/lambda/lambdaExpression/InvalidExpression1.java,**/test/langtools/tools/javac/lambda/8131742/T8131742.java,**/test/langtools/tools/javac/lambda/funcInterfaces/LambdaTest1_neg1.java,**/test/langtools/tools/javac/switchextra/SwitchStatementBroken2.java,**/test/langtools/tools/javac/switchextra/SwitchStatementBroken.java,**/test/langtools/tools/javac/Digits.java,**/test/langtools/tools/javac/LabeledDeclaration.java,**/test/langtools/tools/javac/DefiniteAssignment/ConstantInfiniteWhile.java,**/test/langtools/tools/javac/BadHexConstant.java,**/test/langtools/tools/javac/diags/examples/IllegalStartOfExpr.java,**/test/langtools/tools/javac/diags/examples/RecordsCantDeclareComponentModifiers.java,**/test/langtools/tools/javac/diags/examples/TryWithoutCatchOrFinallyOrResource.java,**/test/langtools/tools/javac/diags/examples/RecordsComponentsCanNotDeclareCStyleArrays.java,**/test/langtools/tools/javac/diags/examples/ExpectedModule.java,**/test/langtools/tools/javac/diags/examples/EnumAsIdentifier2.java,**/test/langtools/tools/javac/diags/examples/TextBlockCloseDelimiter.java,**/test/langtools/tools/javac/diags/examples/IllegalNonAsciiDigit.java,**/test/langtools/tools/javac/diags/examples/IntNumberTooLarge.java,**/test/langtools/tools/javac/diags/examples/VarargsAndReceiver.java,**/test/langtools/tools/javac/diags/examples/EmptyCharLiteral.java,**/test/langtools/tools/javac/diags/examples/IncorrectRecordDeclaration.java,**/test/langtools/tools/javac/diags/examples/PrematureEOF.java,**/test/langtools/tools/javac/diags/examples/InvalidBinaryNumber.java,**/test/langtools/tools/javac/diags/examples/InvalidHexNumber.java,**/test/langtools/tools/javac/diags/examples/CallMustBeFirst.java,**/test/langtools/tools/javac/diags/examples/ThrowsNotAllowedInAnno.java,**/test/langtools/tools/javac/diags/examples/IllegalStartOfType.java,**/test/langtools/tools/javac/diags/examples/TryWithResourcesExprNeedsVar.java,**/test/langtools/tools/javac/diags/examples/Expected2.java,**/test/langtools/tools/javac/diags/examples/FinallyWithoutTry.java,**/test/langtools/tools/javac/diags/examples/IntfAnnotationsCantHaveTypeParams.java,**/test/langtools/tools/javac/diags/examples/IllegalLineEndInCharLit.java,**/test/langtools/tools/javac/diags/examples/UnclosedStringLiteral.java,**/test/langtools/tools/javac/diags/examples/Expected3.java,**/test/langtools/tools/javac/diags/examples/DefaultAllowedInIntfAnnotationMember.java,**/test/langtools/tools/javac/diags/examples/AnnotationMustBeNameValue.java,**/test/langtools/tools/javac/diags/examples/Orphaned.java,**/test/langtools/tools/javac/diags/examples/ArrayDimMissing.java,**/test/langtools/tools/javac/diags/examples/NotAllowedClass.java,**/test/langtools/tools/javac/diags/examples/ExplicitImplicitLambda.java,**/test/langtools/tools/javac/diags/examples/IntfAnnotationsCantHaveParams.java,**/test/langtools/tools/javac/diags/examples/ProcessorWrongType/ProcessorWrongType.java,**/test/langtools/tools/javac/diags/examples/ForeachBadInitialization.java,**/test/langtools/tools/javac/diags/examples/EnumConstantNotExpected.java,**/test/langtools/tools/javac/diags/examples/SwitchMixingCaseTypes.java,**/test/langtools/tools/javac/diags/examples/IllegalEscapeChar.java,**/test/langtools/tools/javac/diags/examples/IllegalChar.java,**/test/langtools/tools/javac/diags/examples/VarargsMustBeLast.java,**/test/langtools/tools/javac/diags/examples/IllegalDot.java,**/test/langtools/tools/javac/diags/examples/IllegalUnderscore.java,**/test/langtools/tools/javac/diags/examples/NotAllowedVariable.java,**/test/langtools/tools/javac/diags/examples/SwitchCaseUnexpectedStatement.java,**/test/langtools/tools/javac/diags/examples/UnclosedCharLiteral.java,**/test/langtools/tools/javac/diags/examples/AssertAsIdentifier2.java,**/test/langtools/tools/javac/diags/examples/ThisAsIdentifier.java,**/test/langtools/tools/javac/diags/examples/ModuleDeclSbInModuleInfoJava.java,**/test/langtools/tools/javac/diags/examples/DotClassExpected.java,**/test/langtools/tools/javac/diags/examples/CantExtendIntfAnno.java,**/test/langtools/tools/javac/diags/examples/IntfAnnotationCantHaveTypeParams.java,**/test/langtools/tools/javac/diags/examples/CatchWithoutTry.java,**/test/langtools/tools/javac/diags/examples/MalformedFpLit.java,**/test/langtools/tools/javac/diags/examples/IdentifierExpected.java,**/test/langtools/tools/javac/diags/examples/InitializerNotAllowed.java,**/test/langtools/tools/javac/diags/examples/IllegalArrayCreation.java,**/test/langtools/tools/javac/diags/examples/VarAllOrNothing.java,**/test/langtools/tools/javac/diags/examples/UnclosedComment.java,**/test/langtools/tools/javac/diags/examples/EnumConstantExpected.java,**/test/langtools/tools/javac/diags/examples/IllegalStartOfStmt.java,**/test/langtools/tools/javac/diags/examples/VarInImplicitLambda.java,**/test/langtools/tools/javac/diags/examples/CannotCreateArrayWithTypeArgs.java,**/test/langtools/tools/javac/diags/examples/IllegalAnnotationDeclaration.java,**/test/langtools/tools/javac/diags/examples/ElseWithoutIf.java,**/test/langtools/tools/javac/api/T6265137a.java,**/test/langtools/tools/javac/api/TestGetElementReferenceDataWithErrors.java,**/test/langtools/tools/javac/T8026963/TypeAnnotationsCrashWithErroneousTreeTest.java,**/test/langtools/tools/javac/IllegalAnnotation.java,**/test/langtools/tools/javac/T6882235.java,**/test/langtools/tools/javac/QualifiedAccess/QualifiedAccess_4.java,**/test/langtools/tools/javac/policy/test3/A.java,**/test/langtools/tools/javac/patterns/PatternCaseErrorRecovery.java,**/test/langtools/tools/javac/patterns/NoModifiersOnBinding.java,**/test/langtools/tools/javac/literals/BadBinaryLiterals.java,**/test/langtools/tools/javac/literals/BadUnderscoreLiterals.java,**/test/langtools/tools/javac/literals/T6891079.java,**/test/langtools/tools/javac/T4994049/T4994049.java,**/test/langtools/jdk/javadoc/doclet/testSourceTab/SingleTab/C.java,**/test/langtools/jdk/javadoc/doclet/testSourceTab/DoubleTab/C.java,**/test/langtools/jdk/javadoc/doclet/testUnnamedPackage/src1/BadSource.java,**/test/langtools/jdk/javadoc/tool/6964914/Error.java,**/test/langtools/jdk/javadoc/tool/T4994049/FileWithTabs.java,**/test/langtools/tools/javac/annotations/neg/pkg/package-info.java|
+guava|git|https://github.com/google/guava|v28.2||
+
+spotbugs|git|https://github.com/spotbugs/spotbugs|3.1.2||
+pmd|git|https://github.com/pmd/pmd|pmd_releases/6.21.0|**/pmd/pmd-java/src/test/**/*,**/pmd/cpd/files/*
+spoon|git|https://github.com/INRIA/spoon.git|spoon-core-10.1.0|**/src/test/resources/**/*
+lombok-ast|git|https://github.com/rzwitserloot/lombok.ast|v0.2|**/lombok-ast/test/**/*
+
+spring-framework|git|https://github.com/spring-projects/spring-framework|v4.1.6.RELEASE||
+hibernate-orm|git|https://github.com/hibernate/hibernate-orm|4.2.19.Final|**/hibernate-orm/documentation/**/*
+elasticsearch|git|https://github.com/elastic/elasticsearch|v1.5.2||
+java-design-patterns|git|https://github.com/iluwatar/java-design-patterns|dd855a376bc025aa61f6816584f79eb9854fe5d7||
+MaterialDesignLibrary|git|https://github.com/navasmdc/MaterialDesignLibrary|1.3||
+Hbase|git|https://github.com/apache/hbase|1.1.0.1||
+Orekit|git|https://github.com/CS-SI/Orekit|8.0.1||
+
+# Those projects are quite old and have lot of legacy code
+apache-ant|git|https://github.com/apache/ant|ANT_194|**/apache-ant/src/tests/**/*,**/apache-ant/src/etc/testcases/
+apache-jsecurity|git|https://github.com/apache/jsecurity|c2ac5b90a467aedb04b52ae50a99e83207d847b3||
+android-launcher|git|https://github.com/android/platform_packages_apps_launcher|android-2.1_r2.1p2||
+apache-struts|git|https://github.com/apache/struts.git|master|**/apache-struts/**/resources/**/*
+
+# Projects which contain a lot of labmda expressions
+infinispan|git|https://github.com/infinispan/infinispan|7.2.5.Final||
+protonpack|git|https://github.com/poetix/protonpack|protonpack-1.7||
+jOOL|git|https://github.com/jOOQ/jOOL|version-0.9.7||
+RxJava|git|https://github.com/ReactiveX/RxJava|v1.0.9||
+Vavr|git|https://github.com/vavr-io/vavr|v0.9.0||
diff --git a/MissingDeprecated/all-examples-in-one/config-all-in-one.xml b/MissingDeprecated/all-examples-in-one/config-all-in-one.xml
new file mode 100644
index 000000000..e88d034ad
--- /dev/null
+++ b/MissingDeprecated/all-examples-in-one/config-all-in-one.xml
@@ -0,0 +1,41 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/MissingDeprecated/all-examples-in-one/list-of-projects.properties b/MissingDeprecated/all-examples-in-one/list-of-projects.properties
new file mode 100644
index 000000000..9c343d765
--- /dev/null
+++ b/MissingDeprecated/all-examples-in-one/list-of-projects.properties
@@ -0,0 +1,39 @@
+# List of GIT repositories to clone / pull for checking with Checkstyle
+# File format: REPO_NAME|[local|git]|URL|[COMMIT_ID]|[EXCLUDE FOLDERS]
+# Please note that bash comments works in this file
+
+# Few projects that delivers set of unusual Java constructions that shall be correctly handled by AST visitor
+# 'InputAllEscapedUnicodeCharacters' must be skipped because it is too big and slows down JXR
+checkstyle|git|https://github.com/checkstyle/checkstyle.git|master|**/.ci-temp/**/*,**/resources-noncompilable/**/asttreestringprinter/**/*,**/resources-noncompilable/**/filefilters/**/*,**/resources-noncompilable/**/main/**/*,**/resources-noncompilable/**/suppressionsstringprinter/**/*,**/resources-noncompilable/**/gui/**/*,**/resources-noncompilable/**/javadocpropertiesgenerator/**/*,src/test/resources-noncompilable/com/puppycrawl/tools/checkstyle/javaparser/InputJavaParser.java,**/InputAllEscapedUnicodeCharacters.java,**/resources-noncompilable/**/javaparser/InputJavaParser.java,**/resources-noncompilable/**/checks/imports/unusedimports/InputUnusedImportsSingleWordPackage.java,**/resources-noncompilable/**/grammar/java19/*,**/resources-noncompilable/**/treewalker/**/*
+sevntu-checkstyle|git|https://github.com/sevntu-checkstyle/sevntu.checkstyle|master||
+checkstyle-sonar|git|https://github.com/checkstyle/sonar-checkstyle|master||
+
+# we exclude files listed in https://github.com/checkstyle/checkstyle/blob/master/.ci/openjdk17-excluded.files
+openjdk17|git|https://github.com/openjdk/jdk17.git|master|**/test/langtools/jdk/javadoc/doclet/testSupplementary/C.java,**/test/hotspot/jtreg/runtime/exceptionMsgs/methodPrinting/TestPrintingMethods.java,**/test/langtools/tools/javac/MethodParameters/UncommonParamNames.java,**/test/langtools/tools/javac/unicode/UnicodeAtEOL.java,**/test/langtools/tools/javac/unicode/UnicodeCommentDelimiter.java,**/test/langtools/tools/javac/unicode/FirstChar2.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID1.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID5.java,**/test/langtools/tools/javac/unicode/TripleQuote.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID4.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID2.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID6.java,**/test/langtools/tools/javac/unicode/NonasciiDigit.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID3.java,**/test/langtools/tools/javac/parser/8081769/T8081769.java,**/test/langtools/tools/javac/parser/7157165/T7157165.java,**/test/langtools/tools/javac/parser/SingleCommaAnnotationValueFail.java,**/test/langtools/tools/javac/parser/MissingClosingBrace.java,**/test/langtools/tools/javac/parser/T4881269.java,**/test/langtools/tools/javac/parser/ErroneousParameters.java,**/test/langtools/tools/javac/failover/FailOver15.java,**/test/langtools/tools/javac/failover/FailOver01.java,**/test/langtools/tools/javac/ExtendArray.java,**/test/langtools/tools/javac/generics/6413682/T6413682.java,**/test/langtools/tools/javac/annotations/neg/Z13.java,**/test/langtools/tools/javac/annotations/neg/Z8.java,**/test/langtools/tools/javac/annotations/neg/NoStatic.java,**/test/langtools/tools/javac/annotations/neg/Syntax1.java,**/test/langtools/tools/javac/annotations/neg/Z9.java,**/test/langtools/tools/javac/annotations/neg/AnnComma.java,**/test/langtools/tools/javac/annotations/neg/Z3.java,**/test/langtools/tools/javac/annotations/neg/Z2.java,**/test/langtools/tools/javac/annotations/neg/Z14.java,**/test/langtools/tools/javac/annotations/neg/Z5.java,**/test/langtools/tools/javac/annotations/neg/NoDefault.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/OldArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/IndexArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedMethodSelectorTest.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/target/DotClass.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/target/IncompleteArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedClassExpr.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedImport.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/BadCast.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedPackage2.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/StaticFields.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/IncompleteArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/6967002/T6967002.java,**/test/langtools/tools/javac/BadAnnotation.java,**/test/langtools/tools/javac/ExtraneousEquals.java,**/test/langtools/tools/javac/ImportUnnamed/foo/A.java,**/test/langtools/tools/javac/processing/6994946/SyntaxErrorTest.java,**/test/langtools/tools/javac/processing/errors/TestParseErrors/ParseErrors.java,**/test/langtools/tools/javac/UncaughtOverflow.java,**/test/langtools/tools/javac/6440583/A.java,**/test/langtools/tools/javac/EOI.java,**/test/langtools/tools/javac/var_implicit_lambda/VarInImplicitLambdaNegTest01.java,**/test/langtools/tools/javac/SwitchScope.java,**/test/langtools/tools/javac/incompleteStatements/T8000484.java,**/test/langtools/tools/javac/quid/T6999438.java,**/test/langtools/tools/javac/T8175198/AnnotationsAndFormalParamsTest.java,**/test/langtools/tools/javac/Parens3.java,**/test/langtools/tools/javac/T8185983/RejectTypeArgsOnSelectTest.java,**/test/langtools/tools/javac/TryWithResources/TwrForVariable2.java,**/test/langtools/tools/javac/TryWithResources/ResDeclOutsideTry.java,**/test/langtools/tools/javac/TryWithResources/PlainTry.java,**/test/langtools/tools/javac/TryWithResources/BadTwrSyntax.java,**/test/langtools/tools/javac/enum/EnumMembersOrder.java,**/test/langtools/tools/javac/enum/EnumAsIdentifier.java,**/test/langtools/tools/javac/rawDiags/Error.java,**/test/langtools/tools/javac/8245153/T8245153.java,**/test/langtools/tools/javac/lambda/lambdaExpression/InvalidExpression1.java,**/test/langtools/tools/javac/lambda/8131742/T8131742.java,**/test/langtools/tools/javac/lambda/funcInterfaces/LambdaTest1_neg1.java,**/test/langtools/tools/javac/switchextra/SwitchStatementBroken2.java,**/test/langtools/tools/javac/switchextra/SwitchStatementBroken.java,**/test/langtools/tools/javac/Digits.java,**/test/langtools/tools/javac/LabeledDeclaration.java,**/test/langtools/tools/javac/DefiniteAssignment/ConstantInfiniteWhile.java,**/test/langtools/tools/javac/BadHexConstant.java,**/test/langtools/tools/javac/diags/examples/IllegalStartOfExpr.java,**/test/langtools/tools/javac/diags/examples/RecordsCantDeclareComponentModifiers.java,**/test/langtools/tools/javac/diags/examples/TryWithoutCatchOrFinallyOrResource.java,**/test/langtools/tools/javac/diags/examples/RecordsComponentsCanNotDeclareCStyleArrays.java,**/test/langtools/tools/javac/diags/examples/ExpectedModule.java,**/test/langtools/tools/javac/diags/examples/EnumAsIdentifier2.java,**/test/langtools/tools/javac/diags/examples/TextBlockCloseDelimiter.java,**/test/langtools/tools/javac/diags/examples/IllegalNonAsciiDigit.java,**/test/langtools/tools/javac/diags/examples/IntNumberTooLarge.java,**/test/langtools/tools/javac/diags/examples/VarargsAndReceiver.java,**/test/langtools/tools/javac/diags/examples/EmptyCharLiteral.java,**/test/langtools/tools/javac/diags/examples/IncorrectRecordDeclaration.java,**/test/langtools/tools/javac/diags/examples/PrematureEOF.java,**/test/langtools/tools/javac/diags/examples/InvalidBinaryNumber.java,**/test/langtools/tools/javac/diags/examples/InvalidHexNumber.java,**/test/langtools/tools/javac/diags/examples/CallMustBeFirst.java,**/test/langtools/tools/javac/diags/examples/ThrowsNotAllowedInAnno.java,**/test/langtools/tools/javac/diags/examples/IllegalStartOfType.java,**/test/langtools/tools/javac/diags/examples/TryWithResourcesExprNeedsVar.java,**/test/langtools/tools/javac/diags/examples/Expected2.java,**/test/langtools/tools/javac/diags/examples/FinallyWithoutTry.java,**/test/langtools/tools/javac/diags/examples/IntfAnnotationsCantHaveTypeParams.java,**/test/langtools/tools/javac/diags/examples/IllegalLineEndInCharLit.java,**/test/langtools/tools/javac/diags/examples/UnclosedStringLiteral.java,**/test/langtools/tools/javac/diags/examples/Expected3.java,**/test/langtools/tools/javac/diags/examples/DefaultAllowedInIntfAnnotationMember.java,**/test/langtools/tools/javac/diags/examples/AnnotationMustBeNameValue.java,**/test/langtools/tools/javac/diags/examples/Orphaned.java,**/test/langtools/tools/javac/diags/examples/ArrayDimMissing.java,**/test/langtools/tools/javac/diags/examples/NotAllowedClass.java,**/test/langtools/tools/javac/diags/examples/ExplicitImplicitLambda.java,**/test/langtools/tools/javac/diags/examples/IntfAnnotationsCantHaveParams.java,**/test/langtools/tools/javac/diags/examples/ProcessorWrongType/ProcessorWrongType.java,**/test/langtools/tools/javac/diags/examples/ForeachBadInitialization.java,**/test/langtools/tools/javac/diags/examples/EnumConstantNotExpected.java,**/test/langtools/tools/javac/diags/examples/SwitchMixingCaseTypes.java,**/test/langtools/tools/javac/diags/examples/IllegalEscapeChar.java,**/test/langtools/tools/javac/diags/examples/IllegalChar.java,**/test/langtools/tools/javac/diags/examples/VarargsMustBeLast.java,**/test/langtools/tools/javac/diags/examples/IllegalDot.java,**/test/langtools/tools/javac/diags/examples/IllegalUnderscore.java,**/test/langtools/tools/javac/diags/examples/NotAllowedVariable.java,**/test/langtools/tools/javac/diags/examples/SwitchCaseUnexpectedStatement.java,**/test/langtools/tools/javac/diags/examples/UnclosedCharLiteral.java,**/test/langtools/tools/javac/diags/examples/AssertAsIdentifier2.java,**/test/langtools/tools/javac/diags/examples/ThisAsIdentifier.java,**/test/langtools/tools/javac/diags/examples/ModuleDeclSbInModuleInfoJava.java,**/test/langtools/tools/javac/diags/examples/DotClassExpected.java,**/test/langtools/tools/javac/diags/examples/CantExtendIntfAnno.java,**/test/langtools/tools/javac/diags/examples/IntfAnnotationCantHaveTypeParams.java,**/test/langtools/tools/javac/diags/examples/CatchWithoutTry.java,**/test/langtools/tools/javac/diags/examples/MalformedFpLit.java,**/test/langtools/tools/javac/diags/examples/IdentifierExpected.java,**/test/langtools/tools/javac/diags/examples/InitializerNotAllowed.java,**/test/langtools/tools/javac/diags/examples/IllegalArrayCreation.java,**/test/langtools/tools/javac/diags/examples/VarAllOrNothing.java,**/test/langtools/tools/javac/diags/examples/UnclosedComment.java,**/test/langtools/tools/javac/diags/examples/EnumConstantExpected.java,**/test/langtools/tools/javac/diags/examples/IllegalStartOfStmt.java,**/test/langtools/tools/javac/diags/examples/VarInImplicitLambda.java,**/test/langtools/tools/javac/diags/examples/CannotCreateArrayWithTypeArgs.java,**/test/langtools/tools/javac/diags/examples/IllegalAnnotationDeclaration.java,**/test/langtools/tools/javac/diags/examples/ElseWithoutIf.java,**/test/langtools/tools/javac/api/T6265137a.java,**/test/langtools/tools/javac/api/TestGetElementReferenceDataWithErrors.java,**/test/langtools/tools/javac/T8026963/TypeAnnotationsCrashWithErroneousTreeTest.java,**/test/langtools/tools/javac/IllegalAnnotation.java,**/test/langtools/tools/javac/T6882235.java,**/test/langtools/tools/javac/QualifiedAccess/QualifiedAccess_4.java,**/test/langtools/tools/javac/policy/test3/A.java,**/test/langtools/tools/javac/patterns/PatternCaseErrorRecovery.java,**/test/langtools/tools/javac/patterns/NoModifiersOnBinding.java,**/test/langtools/tools/javac/literals/BadBinaryLiterals.java,**/test/langtools/tools/javac/literals/BadUnderscoreLiterals.java,**/test/langtools/tools/javac/literals/T6891079.java,**/test/langtools/tools/javac/T4994049/T4994049.java,**/test/langtools/jdk/javadoc/doclet/testSourceTab/SingleTab/C.java,**/test/langtools/jdk/javadoc/doclet/testSourceTab/DoubleTab/C.java,**/test/langtools/jdk/javadoc/doclet/testUnnamedPackage/src1/BadSource.java,**/test/langtools/jdk/javadoc/tool/6964914/Error.java,**/test/langtools/jdk/javadoc/tool/T4994049/FileWithTabs.java,**/test/langtools/tools/javac/annotations/neg/pkg/package-info.java|
+guava|git|https://github.com/google/guava|v28.2||
+
+spotbugs|git|https://github.com/spotbugs/spotbugs|3.1.2||
+pmd|git|https://github.com/pmd/pmd|pmd_releases/6.21.0|**/pmd/pmd-java/src/test/**/*,**/pmd/cpd/files/*
+spoon|git|https://github.com/INRIA/spoon.git|spoon-core-10.1.0|**/src/test/resources/**/*
+lombok-ast|git|https://github.com/rzwitserloot/lombok.ast|v0.2|**/lombok-ast/test/**/*
+
+spring-framework|git|https://github.com/spring-projects/spring-framework|v4.1.6.RELEASE||
+hibernate-orm|git|https://github.com/hibernate/hibernate-orm|4.2.19.Final|**/hibernate-orm/documentation/**/*
+elasticsearch|git|https://github.com/elastic/elasticsearch|v1.5.2||
+java-design-patterns|git|https://github.com/iluwatar/java-design-patterns|dd855a376bc025aa61f6816584f79eb9854fe5d7||
+MaterialDesignLibrary|git|https://github.com/navasmdc/MaterialDesignLibrary|1.3||
+Hbase|git|https://github.com/apache/hbase|1.1.0.1||
+Orekit|git|https://github.com/CS-SI/Orekit|8.0.1||
+
+# Those projects are quite old and have lot of legacy code
+apache-ant|git|https://github.com/apache/ant|ANT_194|**/apache-ant/src/tests/**/*,**/apache-ant/src/etc/testcases/
+apache-jsecurity|git|https://github.com/apache/jsecurity|c2ac5b90a467aedb04b52ae50a99e83207d847b3||
+android-launcher|git|https://github.com/android/platform_packages_apps_launcher|android-2.1_r2.1p2||
+apache-struts|git|https://github.com/apache/struts.git|master|**/apache-struts/**/resources/**/*
+
+# Projects which contain a lot of labmda expressions
+infinispan|git|https://github.com/infinispan/infinispan|7.2.5.Final||
+protonpack|git|https://github.com/poetix/protonpack|protonpack-1.7||
+jOOL|git|https://github.com/jOOQ/jOOL|version-0.9.7||
+RxJava|git|https://github.com/ReactiveX/RxJava|v1.0.9||
+Vavr|git|https://github.com/vavr-io/vavr|v0.9.0||
diff --git a/MissingOverride/all-examples-in-one/config-all-in-one.xml b/MissingOverride/all-examples-in-one/config-all-in-one.xml
new file mode 100644
index 000000000..bddf42d67
--- /dev/null
+++ b/MissingOverride/all-examples-in-one/config-all-in-one.xml
@@ -0,0 +1,41 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/MissingOverride/all-examples-in-one/list-of-projects.properties b/MissingOverride/all-examples-in-one/list-of-projects.properties
new file mode 100644
index 000000000..9c343d765
--- /dev/null
+++ b/MissingOverride/all-examples-in-one/list-of-projects.properties
@@ -0,0 +1,39 @@
+# List of GIT repositories to clone / pull for checking with Checkstyle
+# File format: REPO_NAME|[local|git]|URL|[COMMIT_ID]|[EXCLUDE FOLDERS]
+# Please note that bash comments works in this file
+
+# Few projects that delivers set of unusual Java constructions that shall be correctly handled by AST visitor
+# 'InputAllEscapedUnicodeCharacters' must be skipped because it is too big and slows down JXR
+checkstyle|git|https://github.com/checkstyle/checkstyle.git|master|**/.ci-temp/**/*,**/resources-noncompilable/**/asttreestringprinter/**/*,**/resources-noncompilable/**/filefilters/**/*,**/resources-noncompilable/**/main/**/*,**/resources-noncompilable/**/suppressionsstringprinter/**/*,**/resources-noncompilable/**/gui/**/*,**/resources-noncompilable/**/javadocpropertiesgenerator/**/*,src/test/resources-noncompilable/com/puppycrawl/tools/checkstyle/javaparser/InputJavaParser.java,**/InputAllEscapedUnicodeCharacters.java,**/resources-noncompilable/**/javaparser/InputJavaParser.java,**/resources-noncompilable/**/checks/imports/unusedimports/InputUnusedImportsSingleWordPackage.java,**/resources-noncompilable/**/grammar/java19/*,**/resources-noncompilable/**/treewalker/**/*
+sevntu-checkstyle|git|https://github.com/sevntu-checkstyle/sevntu.checkstyle|master||
+checkstyle-sonar|git|https://github.com/checkstyle/sonar-checkstyle|master||
+
+# we exclude files listed in https://github.com/checkstyle/checkstyle/blob/master/.ci/openjdk17-excluded.files
+openjdk17|git|https://github.com/openjdk/jdk17.git|master|**/test/langtools/jdk/javadoc/doclet/testSupplementary/C.java,**/test/hotspot/jtreg/runtime/exceptionMsgs/methodPrinting/TestPrintingMethods.java,**/test/langtools/tools/javac/MethodParameters/UncommonParamNames.java,**/test/langtools/tools/javac/unicode/UnicodeAtEOL.java,**/test/langtools/tools/javac/unicode/UnicodeCommentDelimiter.java,**/test/langtools/tools/javac/unicode/FirstChar2.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID1.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID5.java,**/test/langtools/tools/javac/unicode/TripleQuote.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID4.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID2.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID6.java,**/test/langtools/tools/javac/unicode/NonasciiDigit.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID3.java,**/test/langtools/tools/javac/parser/8081769/T8081769.java,**/test/langtools/tools/javac/parser/7157165/T7157165.java,**/test/langtools/tools/javac/parser/SingleCommaAnnotationValueFail.java,**/test/langtools/tools/javac/parser/MissingClosingBrace.java,**/test/langtools/tools/javac/parser/T4881269.java,**/test/langtools/tools/javac/parser/ErroneousParameters.java,**/test/langtools/tools/javac/failover/FailOver15.java,**/test/langtools/tools/javac/failover/FailOver01.java,**/test/langtools/tools/javac/ExtendArray.java,**/test/langtools/tools/javac/generics/6413682/T6413682.java,**/test/langtools/tools/javac/annotations/neg/Z13.java,**/test/langtools/tools/javac/annotations/neg/Z8.java,**/test/langtools/tools/javac/annotations/neg/NoStatic.java,**/test/langtools/tools/javac/annotations/neg/Syntax1.java,**/test/langtools/tools/javac/annotations/neg/Z9.java,**/test/langtools/tools/javac/annotations/neg/AnnComma.java,**/test/langtools/tools/javac/annotations/neg/Z3.java,**/test/langtools/tools/javac/annotations/neg/Z2.java,**/test/langtools/tools/javac/annotations/neg/Z14.java,**/test/langtools/tools/javac/annotations/neg/Z5.java,**/test/langtools/tools/javac/annotations/neg/NoDefault.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/OldArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/IndexArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedMethodSelectorTest.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/target/DotClass.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/target/IncompleteArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedClassExpr.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedImport.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/BadCast.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedPackage2.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/StaticFields.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/IncompleteArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/6967002/T6967002.java,**/test/langtools/tools/javac/BadAnnotation.java,**/test/langtools/tools/javac/ExtraneousEquals.java,**/test/langtools/tools/javac/ImportUnnamed/foo/A.java,**/test/langtools/tools/javac/processing/6994946/SyntaxErrorTest.java,**/test/langtools/tools/javac/processing/errors/TestParseErrors/ParseErrors.java,**/test/langtools/tools/javac/UncaughtOverflow.java,**/test/langtools/tools/javac/6440583/A.java,**/test/langtools/tools/javac/EOI.java,**/test/langtools/tools/javac/var_implicit_lambda/VarInImplicitLambdaNegTest01.java,**/test/langtools/tools/javac/SwitchScope.java,**/test/langtools/tools/javac/incompleteStatements/T8000484.java,**/test/langtools/tools/javac/quid/T6999438.java,**/test/langtools/tools/javac/T8175198/AnnotationsAndFormalParamsTest.java,**/test/langtools/tools/javac/Parens3.java,**/test/langtools/tools/javac/T8185983/RejectTypeArgsOnSelectTest.java,**/test/langtools/tools/javac/TryWithResources/TwrForVariable2.java,**/test/langtools/tools/javac/TryWithResources/ResDeclOutsideTry.java,**/test/langtools/tools/javac/TryWithResources/PlainTry.java,**/test/langtools/tools/javac/TryWithResources/BadTwrSyntax.java,**/test/langtools/tools/javac/enum/EnumMembersOrder.java,**/test/langtools/tools/javac/enum/EnumAsIdentifier.java,**/test/langtools/tools/javac/rawDiags/Error.java,**/test/langtools/tools/javac/8245153/T8245153.java,**/test/langtools/tools/javac/lambda/lambdaExpression/InvalidExpression1.java,**/test/langtools/tools/javac/lambda/8131742/T8131742.java,**/test/langtools/tools/javac/lambda/funcInterfaces/LambdaTest1_neg1.java,**/test/langtools/tools/javac/switchextra/SwitchStatementBroken2.java,**/test/langtools/tools/javac/switchextra/SwitchStatementBroken.java,**/test/langtools/tools/javac/Digits.java,**/test/langtools/tools/javac/LabeledDeclaration.java,**/test/langtools/tools/javac/DefiniteAssignment/ConstantInfiniteWhile.java,**/test/langtools/tools/javac/BadHexConstant.java,**/test/langtools/tools/javac/diags/examples/IllegalStartOfExpr.java,**/test/langtools/tools/javac/diags/examples/RecordsCantDeclareComponentModifiers.java,**/test/langtools/tools/javac/diags/examples/TryWithoutCatchOrFinallyOrResource.java,**/test/langtools/tools/javac/diags/examples/RecordsComponentsCanNotDeclareCStyleArrays.java,**/test/langtools/tools/javac/diags/examples/ExpectedModule.java,**/test/langtools/tools/javac/diags/examples/EnumAsIdentifier2.java,**/test/langtools/tools/javac/diags/examples/TextBlockCloseDelimiter.java,**/test/langtools/tools/javac/diags/examples/IllegalNonAsciiDigit.java,**/test/langtools/tools/javac/diags/examples/IntNumberTooLarge.java,**/test/langtools/tools/javac/diags/examples/VarargsAndReceiver.java,**/test/langtools/tools/javac/diags/examples/EmptyCharLiteral.java,**/test/langtools/tools/javac/diags/examples/IncorrectRecordDeclaration.java,**/test/langtools/tools/javac/diags/examples/PrematureEOF.java,**/test/langtools/tools/javac/diags/examples/InvalidBinaryNumber.java,**/test/langtools/tools/javac/diags/examples/InvalidHexNumber.java,**/test/langtools/tools/javac/diags/examples/CallMustBeFirst.java,**/test/langtools/tools/javac/diags/examples/ThrowsNotAllowedInAnno.java,**/test/langtools/tools/javac/diags/examples/IllegalStartOfType.java,**/test/langtools/tools/javac/diags/examples/TryWithResourcesExprNeedsVar.java,**/test/langtools/tools/javac/diags/examples/Expected2.java,**/test/langtools/tools/javac/diags/examples/FinallyWithoutTry.java,**/test/langtools/tools/javac/diags/examples/IntfAnnotationsCantHaveTypeParams.java,**/test/langtools/tools/javac/diags/examples/IllegalLineEndInCharLit.java,**/test/langtools/tools/javac/diags/examples/UnclosedStringLiteral.java,**/test/langtools/tools/javac/diags/examples/Expected3.java,**/test/langtools/tools/javac/diags/examples/DefaultAllowedInIntfAnnotationMember.java,**/test/langtools/tools/javac/diags/examples/AnnotationMustBeNameValue.java,**/test/langtools/tools/javac/diags/examples/Orphaned.java,**/test/langtools/tools/javac/diags/examples/ArrayDimMissing.java,**/test/langtools/tools/javac/diags/examples/NotAllowedClass.java,**/test/langtools/tools/javac/diags/examples/ExplicitImplicitLambda.java,**/test/langtools/tools/javac/diags/examples/IntfAnnotationsCantHaveParams.java,**/test/langtools/tools/javac/diags/examples/ProcessorWrongType/ProcessorWrongType.java,**/test/langtools/tools/javac/diags/examples/ForeachBadInitialization.java,**/test/langtools/tools/javac/diags/examples/EnumConstantNotExpected.java,**/test/langtools/tools/javac/diags/examples/SwitchMixingCaseTypes.java,**/test/langtools/tools/javac/diags/examples/IllegalEscapeChar.java,**/test/langtools/tools/javac/diags/examples/IllegalChar.java,**/test/langtools/tools/javac/diags/examples/VarargsMustBeLast.java,**/test/langtools/tools/javac/diags/examples/IllegalDot.java,**/test/langtools/tools/javac/diags/examples/IllegalUnderscore.java,**/test/langtools/tools/javac/diags/examples/NotAllowedVariable.java,**/test/langtools/tools/javac/diags/examples/SwitchCaseUnexpectedStatement.java,**/test/langtools/tools/javac/diags/examples/UnclosedCharLiteral.java,**/test/langtools/tools/javac/diags/examples/AssertAsIdentifier2.java,**/test/langtools/tools/javac/diags/examples/ThisAsIdentifier.java,**/test/langtools/tools/javac/diags/examples/ModuleDeclSbInModuleInfoJava.java,**/test/langtools/tools/javac/diags/examples/DotClassExpected.java,**/test/langtools/tools/javac/diags/examples/CantExtendIntfAnno.java,**/test/langtools/tools/javac/diags/examples/IntfAnnotationCantHaveTypeParams.java,**/test/langtools/tools/javac/diags/examples/CatchWithoutTry.java,**/test/langtools/tools/javac/diags/examples/MalformedFpLit.java,**/test/langtools/tools/javac/diags/examples/IdentifierExpected.java,**/test/langtools/tools/javac/diags/examples/InitializerNotAllowed.java,**/test/langtools/tools/javac/diags/examples/IllegalArrayCreation.java,**/test/langtools/tools/javac/diags/examples/VarAllOrNothing.java,**/test/langtools/tools/javac/diags/examples/UnclosedComment.java,**/test/langtools/tools/javac/diags/examples/EnumConstantExpected.java,**/test/langtools/tools/javac/diags/examples/IllegalStartOfStmt.java,**/test/langtools/tools/javac/diags/examples/VarInImplicitLambda.java,**/test/langtools/tools/javac/diags/examples/CannotCreateArrayWithTypeArgs.java,**/test/langtools/tools/javac/diags/examples/IllegalAnnotationDeclaration.java,**/test/langtools/tools/javac/diags/examples/ElseWithoutIf.java,**/test/langtools/tools/javac/api/T6265137a.java,**/test/langtools/tools/javac/api/TestGetElementReferenceDataWithErrors.java,**/test/langtools/tools/javac/T8026963/TypeAnnotationsCrashWithErroneousTreeTest.java,**/test/langtools/tools/javac/IllegalAnnotation.java,**/test/langtools/tools/javac/T6882235.java,**/test/langtools/tools/javac/QualifiedAccess/QualifiedAccess_4.java,**/test/langtools/tools/javac/policy/test3/A.java,**/test/langtools/tools/javac/patterns/PatternCaseErrorRecovery.java,**/test/langtools/tools/javac/patterns/NoModifiersOnBinding.java,**/test/langtools/tools/javac/literals/BadBinaryLiterals.java,**/test/langtools/tools/javac/literals/BadUnderscoreLiterals.java,**/test/langtools/tools/javac/literals/T6891079.java,**/test/langtools/tools/javac/T4994049/T4994049.java,**/test/langtools/jdk/javadoc/doclet/testSourceTab/SingleTab/C.java,**/test/langtools/jdk/javadoc/doclet/testSourceTab/DoubleTab/C.java,**/test/langtools/jdk/javadoc/doclet/testUnnamedPackage/src1/BadSource.java,**/test/langtools/jdk/javadoc/tool/6964914/Error.java,**/test/langtools/jdk/javadoc/tool/T4994049/FileWithTabs.java,**/test/langtools/tools/javac/annotations/neg/pkg/package-info.java|
+guava|git|https://github.com/google/guava|v28.2||
+
+spotbugs|git|https://github.com/spotbugs/spotbugs|3.1.2||
+pmd|git|https://github.com/pmd/pmd|pmd_releases/6.21.0|**/pmd/pmd-java/src/test/**/*,**/pmd/cpd/files/*
+spoon|git|https://github.com/INRIA/spoon.git|spoon-core-10.1.0|**/src/test/resources/**/*
+lombok-ast|git|https://github.com/rzwitserloot/lombok.ast|v0.2|**/lombok-ast/test/**/*
+
+spring-framework|git|https://github.com/spring-projects/spring-framework|v4.1.6.RELEASE||
+hibernate-orm|git|https://github.com/hibernate/hibernate-orm|4.2.19.Final|**/hibernate-orm/documentation/**/*
+elasticsearch|git|https://github.com/elastic/elasticsearch|v1.5.2||
+java-design-patterns|git|https://github.com/iluwatar/java-design-patterns|dd855a376bc025aa61f6816584f79eb9854fe5d7||
+MaterialDesignLibrary|git|https://github.com/navasmdc/MaterialDesignLibrary|1.3||
+Hbase|git|https://github.com/apache/hbase|1.1.0.1||
+Orekit|git|https://github.com/CS-SI/Orekit|8.0.1||
+
+# Those projects are quite old and have lot of legacy code
+apache-ant|git|https://github.com/apache/ant|ANT_194|**/apache-ant/src/tests/**/*,**/apache-ant/src/etc/testcases/
+apache-jsecurity|git|https://github.com/apache/jsecurity|c2ac5b90a467aedb04b52ae50a99e83207d847b3||
+android-launcher|git|https://github.com/android/platform_packages_apps_launcher|android-2.1_r2.1p2||
+apache-struts|git|https://github.com/apache/struts.git|master|**/apache-struts/**/resources/**/*
+
+# Projects which contain a lot of labmda expressions
+infinispan|git|https://github.com/infinispan/infinispan|7.2.5.Final||
+protonpack|git|https://github.com/poetix/protonpack|protonpack-1.7||
+jOOL|git|https://github.com/jOOQ/jOOL|version-0.9.7||
+RxJava|git|https://github.com/ReactiveX/RxJava|v1.0.9||
+Vavr|git|https://github.com/vavr-io/vavr|v0.9.0||
diff --git a/PackageAnnotation/all-examples-in-one/config-all-in-one.xml b/PackageAnnotation/all-examples-in-one/config-all-in-one.xml
new file mode 100644
index 000000000..3e30214d8
--- /dev/null
+++ b/PackageAnnotation/all-examples-in-one/config-all-in-one.xml
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/PackageAnnotation/all-examples-in-one/list-of-projects.properties b/PackageAnnotation/all-examples-in-one/list-of-projects.properties
new file mode 100644
index 000000000..9c343d765
--- /dev/null
+++ b/PackageAnnotation/all-examples-in-one/list-of-projects.properties
@@ -0,0 +1,39 @@
+# List of GIT repositories to clone / pull for checking with Checkstyle
+# File format: REPO_NAME|[local|git]|URL|[COMMIT_ID]|[EXCLUDE FOLDERS]
+# Please note that bash comments works in this file
+
+# Few projects that delivers set of unusual Java constructions that shall be correctly handled by AST visitor
+# 'InputAllEscapedUnicodeCharacters' must be skipped because it is too big and slows down JXR
+checkstyle|git|https://github.com/checkstyle/checkstyle.git|master|**/.ci-temp/**/*,**/resources-noncompilable/**/asttreestringprinter/**/*,**/resources-noncompilable/**/filefilters/**/*,**/resources-noncompilable/**/main/**/*,**/resources-noncompilable/**/suppressionsstringprinter/**/*,**/resources-noncompilable/**/gui/**/*,**/resources-noncompilable/**/javadocpropertiesgenerator/**/*,src/test/resources-noncompilable/com/puppycrawl/tools/checkstyle/javaparser/InputJavaParser.java,**/InputAllEscapedUnicodeCharacters.java,**/resources-noncompilable/**/javaparser/InputJavaParser.java,**/resources-noncompilable/**/checks/imports/unusedimports/InputUnusedImportsSingleWordPackage.java,**/resources-noncompilable/**/grammar/java19/*,**/resources-noncompilable/**/treewalker/**/*
+sevntu-checkstyle|git|https://github.com/sevntu-checkstyle/sevntu.checkstyle|master||
+checkstyle-sonar|git|https://github.com/checkstyle/sonar-checkstyle|master||
+
+# we exclude files listed in https://github.com/checkstyle/checkstyle/blob/master/.ci/openjdk17-excluded.files
+openjdk17|git|https://github.com/openjdk/jdk17.git|master|**/test/langtools/jdk/javadoc/doclet/testSupplementary/C.java,**/test/hotspot/jtreg/runtime/exceptionMsgs/methodPrinting/TestPrintingMethods.java,**/test/langtools/tools/javac/MethodParameters/UncommonParamNames.java,**/test/langtools/tools/javac/unicode/UnicodeAtEOL.java,**/test/langtools/tools/javac/unicode/UnicodeCommentDelimiter.java,**/test/langtools/tools/javac/unicode/FirstChar2.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID1.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID5.java,**/test/langtools/tools/javac/unicode/TripleQuote.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID4.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID2.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID6.java,**/test/langtools/tools/javac/unicode/NonasciiDigit.java,**/test/langtools/tools/javac/unicode/SupplementaryJavaID3.java,**/test/langtools/tools/javac/parser/8081769/T8081769.java,**/test/langtools/tools/javac/parser/7157165/T7157165.java,**/test/langtools/tools/javac/parser/SingleCommaAnnotationValueFail.java,**/test/langtools/tools/javac/parser/MissingClosingBrace.java,**/test/langtools/tools/javac/parser/T4881269.java,**/test/langtools/tools/javac/parser/ErroneousParameters.java,**/test/langtools/tools/javac/failover/FailOver15.java,**/test/langtools/tools/javac/failover/FailOver01.java,**/test/langtools/tools/javac/ExtendArray.java,**/test/langtools/tools/javac/generics/6413682/T6413682.java,**/test/langtools/tools/javac/annotations/neg/Z13.java,**/test/langtools/tools/javac/annotations/neg/Z8.java,**/test/langtools/tools/javac/annotations/neg/NoStatic.java,**/test/langtools/tools/javac/annotations/neg/Syntax1.java,**/test/langtools/tools/javac/annotations/neg/Z9.java,**/test/langtools/tools/javac/annotations/neg/AnnComma.java,**/test/langtools/tools/javac/annotations/neg/Z3.java,**/test/langtools/tools/javac/annotations/neg/Z2.java,**/test/langtools/tools/javac/annotations/neg/Z14.java,**/test/langtools/tools/javac/annotations/neg/Z5.java,**/test/langtools/tools/javac/annotations/neg/NoDefault.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/OldArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/IndexArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedMethodSelectorTest.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/target/DotClass.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/target/IncompleteArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedClassExpr.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedImport.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/BadCast.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/AnnotatedPackage2.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/StaticFields.java,**/test/langtools/tools/javac/annotations/typeAnnotations/failures/IncompleteArray.java,**/test/langtools/tools/javac/annotations/typeAnnotations/6967002/T6967002.java,**/test/langtools/tools/javac/BadAnnotation.java,**/test/langtools/tools/javac/ExtraneousEquals.java,**/test/langtools/tools/javac/ImportUnnamed/foo/A.java,**/test/langtools/tools/javac/processing/6994946/SyntaxErrorTest.java,**/test/langtools/tools/javac/processing/errors/TestParseErrors/ParseErrors.java,**/test/langtools/tools/javac/UncaughtOverflow.java,**/test/langtools/tools/javac/6440583/A.java,**/test/langtools/tools/javac/EOI.java,**/test/langtools/tools/javac/var_implicit_lambda/VarInImplicitLambdaNegTest01.java,**/test/langtools/tools/javac/SwitchScope.java,**/test/langtools/tools/javac/incompleteStatements/T8000484.java,**/test/langtools/tools/javac/quid/T6999438.java,**/test/langtools/tools/javac/T8175198/AnnotationsAndFormalParamsTest.java,**/test/langtools/tools/javac/Parens3.java,**/test/langtools/tools/javac/T8185983/RejectTypeArgsOnSelectTest.java,**/test/langtools/tools/javac/TryWithResources/TwrForVariable2.java,**/test/langtools/tools/javac/TryWithResources/ResDeclOutsideTry.java,**/test/langtools/tools/javac/TryWithResources/PlainTry.java,**/test/langtools/tools/javac/TryWithResources/BadTwrSyntax.java,**/test/langtools/tools/javac/enum/EnumMembersOrder.java,**/test/langtools/tools/javac/enum/EnumAsIdentifier.java,**/test/langtools/tools/javac/rawDiags/Error.java,**/test/langtools/tools/javac/8245153/T8245153.java,**/test/langtools/tools/javac/lambda/lambdaExpression/InvalidExpression1.java,**/test/langtools/tools/javac/lambda/8131742/T8131742.java,**/test/langtools/tools/javac/lambda/funcInterfaces/LambdaTest1_neg1.java,**/test/langtools/tools/javac/switchextra/SwitchStatementBroken2.java,**/test/langtools/tools/javac/switchextra/SwitchStatementBroken.java,**/test/langtools/tools/javac/Digits.java,**/test/langtools/tools/javac/LabeledDeclaration.java,**/test/langtools/tools/javac/DefiniteAssignment/ConstantInfiniteWhile.java,**/test/langtools/tools/javac/BadHexConstant.java,**/test/langtools/tools/javac/diags/examples/IllegalStartOfExpr.java,**/test/langtools/tools/javac/diags/examples/RecordsCantDeclareComponentModifiers.java,**/test/langtools/tools/javac/diags/examples/TryWithoutCatchOrFinallyOrResource.java,**/test/langtools/tools/javac/diags/examples/RecordsComponentsCanNotDeclareCStyleArrays.java,**/test/langtools/tools/javac/diags/examples/ExpectedModule.java,**/test/langtools/tools/javac/diags/examples/EnumAsIdentifier2.java,**/test/langtools/tools/javac/diags/examples/TextBlockCloseDelimiter.java,**/test/langtools/tools/javac/diags/examples/IllegalNonAsciiDigit.java,**/test/langtools/tools/javac/diags/examples/IntNumberTooLarge.java,**/test/langtools/tools/javac/diags/examples/VarargsAndReceiver.java,**/test/langtools/tools/javac/diags/examples/EmptyCharLiteral.java,**/test/langtools/tools/javac/diags/examples/IncorrectRecordDeclaration.java,**/test/langtools/tools/javac/diags/examples/PrematureEOF.java,**/test/langtools/tools/javac/diags/examples/InvalidBinaryNumber.java,**/test/langtools/tools/javac/diags/examples/InvalidHexNumber.java,**/test/langtools/tools/javac/diags/examples/CallMustBeFirst.java,**/test/langtools/tools/javac/diags/examples/ThrowsNotAllowedInAnno.java,**/test/langtools/tools/javac/diags/examples/IllegalStartOfType.java,**/test/langtools/tools/javac/diags/examples/TryWithResourcesExprNeedsVar.java,**/test/langtools/tools/javac/diags/examples/Expected2.java,**/test/langtools/tools/javac/diags/examples/FinallyWithoutTry.java,**/test/langtools/tools/javac/diags/examples/IntfAnnotationsCantHaveTypeParams.java,**/test/langtools/tools/javac/diags/examples/IllegalLineEndInCharLit.java,**/test/langtools/tools/javac/diags/examples/UnclosedStringLiteral.java,**/test/langtools/tools/javac/diags/examples/Expected3.java,**/test/langtools/tools/javac/diags/examples/DefaultAllowedInIntfAnnotationMember.java,**/test/langtools/tools/javac/diags/examples/AnnotationMustBeNameValue.java,**/test/langtools/tools/javac/diags/examples/Orphaned.java,**/test/langtools/tools/javac/diags/examples/ArrayDimMissing.java,**/test/langtools/tools/javac/diags/examples/NotAllowedClass.java,**/test/langtools/tools/javac/diags/examples/ExplicitImplicitLambda.java,**/test/langtools/tools/javac/diags/examples/IntfAnnotationsCantHaveParams.java,**/test/langtools/tools/javac/diags/examples/ProcessorWrongType/ProcessorWrongType.java,**/test/langtools/tools/javac/diags/examples/ForeachBadInitialization.java,**/test/langtools/tools/javac/diags/examples/EnumConstantNotExpected.java,**/test/langtools/tools/javac/diags/examples/SwitchMixingCaseTypes.java,**/test/langtools/tools/javac/diags/examples/IllegalEscapeChar.java,**/test/langtools/tools/javac/diags/examples/IllegalChar.java,**/test/langtools/tools/javac/diags/examples/VarargsMustBeLast.java,**/test/langtools/tools/javac/diags/examples/IllegalDot.java,**/test/langtools/tools/javac/diags/examples/IllegalUnderscore.java,**/test/langtools/tools/javac/diags/examples/NotAllowedVariable.java,**/test/langtools/tools/javac/diags/examples/SwitchCaseUnexpectedStatement.java,**/test/langtools/tools/javac/diags/examples/UnclosedCharLiteral.java,**/test/langtools/tools/javac/diags/examples/AssertAsIdentifier2.java,**/test/langtools/tools/javac/diags/examples/ThisAsIdentifier.java,**/test/langtools/tools/javac/diags/examples/ModuleDeclSbInModuleInfoJava.java,**/test/langtools/tools/javac/diags/examples/DotClassExpected.java,**/test/langtools/tools/javac/diags/examples/CantExtendIntfAnno.java,**/test/langtools/tools/javac/diags/examples/IntfAnnotationCantHaveTypeParams.java,**/test/langtools/tools/javac/diags/examples/CatchWithoutTry.java,**/test/langtools/tools/javac/diags/examples/MalformedFpLit.java,**/test/langtools/tools/javac/diags/examples/IdentifierExpected.java,**/test/langtools/tools/javac/diags/examples/InitializerNotAllowed.java,**/test/langtools/tools/javac/diags/examples/IllegalArrayCreation.java,**/test/langtools/tools/javac/diags/examples/VarAllOrNothing.java,**/test/langtools/tools/javac/diags/examples/UnclosedComment.java,**/test/langtools/tools/javac/diags/examples/EnumConstantExpected.java,**/test/langtools/tools/javac/diags/examples/IllegalStartOfStmt.java,**/test/langtools/tools/javac/diags/examples/VarInImplicitLambda.java,**/test/langtools/tools/javac/diags/examples/CannotCreateArrayWithTypeArgs.java,**/test/langtools/tools/javac/diags/examples/IllegalAnnotationDeclaration.java,**/test/langtools/tools/javac/diags/examples/ElseWithoutIf.java,**/test/langtools/tools/javac/api/T6265137a.java,**/test/langtools/tools/javac/api/TestGetElementReferenceDataWithErrors.java,**/test/langtools/tools/javac/T8026963/TypeAnnotationsCrashWithErroneousTreeTest.java,**/test/langtools/tools/javac/IllegalAnnotation.java,**/test/langtools/tools/javac/T6882235.java,**/test/langtools/tools/javac/QualifiedAccess/QualifiedAccess_4.java,**/test/langtools/tools/javac/policy/test3/A.java,**/test/langtools/tools/javac/patterns/PatternCaseErrorRecovery.java,**/test/langtools/tools/javac/patterns/NoModifiersOnBinding.java,**/test/langtools/tools/javac/literals/BadBinaryLiterals.java,**/test/langtools/tools/javac/literals/BadUnderscoreLiterals.java,**/test/langtools/tools/javac/literals/T6891079.java,**/test/langtools/tools/javac/T4994049/T4994049.java,**/test/langtools/jdk/javadoc/doclet/testSourceTab/SingleTab/C.java,**/test/langtools/jdk/javadoc/doclet/testSourceTab/DoubleTab/C.java,**/test/langtools/jdk/javadoc/doclet/testUnnamedPackage/src1/BadSource.java,**/test/langtools/jdk/javadoc/tool/6964914/Error.java,**/test/langtools/jdk/javadoc/tool/T4994049/FileWithTabs.java,**/test/langtools/tools/javac/annotations/neg/pkg/package-info.java|
+guava|git|https://github.com/google/guava|v28.2||
+
+spotbugs|git|https://github.com/spotbugs/spotbugs|3.1.2||
+pmd|git|https://github.com/pmd/pmd|pmd_releases/6.21.0|**/pmd/pmd-java/src/test/**/*,**/pmd/cpd/files/*
+spoon|git|https://github.com/INRIA/spoon.git|spoon-core-10.1.0|**/src/test/resources/**/*
+lombok-ast|git|https://github.com/rzwitserloot/lombok.ast|v0.2|**/lombok-ast/test/**/*
+
+spring-framework|git|https://github.com/spring-projects/spring-framework|v4.1.6.RELEASE||
+hibernate-orm|git|https://github.com/hibernate/hibernate-orm|4.2.19.Final|**/hibernate-orm/documentation/**/*
+elasticsearch|git|https://github.com/elastic/elasticsearch|v1.5.2||
+java-design-patterns|git|https://github.com/iluwatar/java-design-patterns|dd855a376bc025aa61f6816584f79eb9854fe5d7||
+MaterialDesignLibrary|git|https://github.com/navasmdc/MaterialDesignLibrary|1.3||
+Hbase|git|https://github.com/apache/hbase|1.1.0.1||
+Orekit|git|https://github.com/CS-SI/Orekit|8.0.1||
+
+# Those projects are quite old and have lot of legacy code
+apache-ant|git|https://github.com/apache/ant|ANT_194|**/apache-ant/src/tests/**/*,**/apache-ant/src/etc/testcases/
+apache-jsecurity|git|https://github.com/apache/jsecurity|c2ac5b90a467aedb04b52ae50a99e83207d847b3||
+android-launcher|git|https://github.com/android/platform_packages_apps_launcher|android-2.1_r2.1p2||
+apache-struts|git|https://github.com/apache/struts.git|master|**/apache-struts/**/resources/**/*
+
+# Projects which contain a lot of labmda expressions
+infinispan|git|https://github.com/infinispan/infinispan|7.2.5.Final||
+protonpack|git|https://github.com/poetix/protonpack|protonpack-1.7||
+jOOL|git|https://github.com/jOOQ/jOOL|version-0.9.7||
+RxJava|git|https://github.com/ReactiveX/RxJava|v1.0.9||
+Vavr|git|https://github.com/vavr-io/vavr|v0.9.0||
diff --git a/extractor/src/main/java/com/example/extractor/Main.java b/extractor/src/main/java/com/example/extractor/Main.java
index ad9135c4e..bd661d4e7 100644
--- a/extractor/src/main/java/com/example/extractor/Main.java
+++ b/extractor/src/main/java/com/example/extractor/Main.java
@@ -6,6 +6,7 @@
import java.util.stream.Stream;
import java.util.regex.Pattern;
import java.util.regex.Matcher;
+import java.util.ArrayList;
public class Main {
@@ -37,6 +38,9 @@ public static void main(String[] args) throws Exception {
// Process files in the input directory and save results to the output directory
processFiles(inputDirectory, outputDirectory.toString());
+
+ // Generate the all-in-one configuration
+ generateAllInOneConfig(inputDirectory, outputDirectory.toString());
}
public static void processFiles(String inputDir, String outputDir) throws Exception {
@@ -115,4 +119,60 @@ private static void processFile(String exampleFile, Path outputPath) {
e.printStackTrace();
}
}
+
+ public static void generateAllInOneConfig(String inputDir, String outputDir) throws Exception {
+ // Pattern to match files named Example#.java or Example#.txt
+ Pattern pattern = Pattern.compile("Example\\d+\\.(java|txt)");
+
+ // Collect all Example#.java and Example#.txt files in the input directory
+ System.out.println("Walking through the input directory to collect Example#.java and Example#.txt files...");
+ List exampleFiles;
+ try (Stream paths = Files.walk(Paths.get(inputDir))) {
+ exampleFiles = paths
+ .filter(Files::isRegularFile)
+ .filter(path -> {
+ Matcher matcher = pattern.matcher(path.getFileName().toString());
+ return matcher.matches();
+ })
+ .map(Path::toString)
+ .collect(Collectors.toList());
+ }
+
+ System.out.println("Found " + exampleFiles.size() + " Example#.java or Example#.txt files for all-in-one config.");
+
+ // Ensure output directory exists
+ Path outputPath = Paths.get(outputDir).toAbsolutePath();
+ if (!Files.exists(outputPath)) {
+ System.out.println("Output directory does not exist. Creating: " + outputPath);
+ Files.createDirectories(outputPath);
+ } else {
+ System.out.println("Output directory already exists: " + outputPath);
+ }
+
+ // Create a subfolder named "all-examples-in-one"
+ Path allInOneSubfolderPath = outputPath.resolve("all-examples-in-one");
+ if (!Files.exists(allInOneSubfolderPath)) {
+ System.out.println("Subfolder 'all-examples-in-one' does not exist. Creating: " + allInOneSubfolderPath);
+ Files.createDirectories(allInOneSubfolderPath);
+ } else {
+ System.out.println("Subfolder 'all-examples-in-one' already exists: " + allInOneSubfolderPath);
+ }
+
+ // Determine the template file path using the class loader
+ String templateFilePath = Main.class.getClassLoader().getResource("config-template-treewalker.xml").getPath();
+ System.out.println("Template file path: " + templateFilePath);
+
+ String[] exampleFilePaths = exampleFiles.toArray(new String[0]);
+ String outputFilePath = allInOneSubfolderPath.resolve("config-all-in-one.xml").toString();
+
+ // Generate the all-in-one configuration file
+ System.out.println("Generating all-in-one configuration file at: " + outputFilePath);
+ ConfigSerializer.serializeAllInOneConfigToFile(exampleFilePaths, templateFilePath, outputFilePath);
+
+ // Copy the project.properties file to the all-in-one subfolder
+ Path sourcePropertiesPath = Paths.get(PROJECT_PROPERTIES_FILE_PATH).toAbsolutePath();
+ Path targetPropertiesPath = allInOneSubfolderPath.resolve(PROJECT_PROPERTIES_FILENAME);
+ System.out.println("Copying project properties from: " + sourcePropertiesPath + " to " + targetPropertiesPath);
+ Files.copy(sourcePropertiesPath, targetPropertiesPath, StandardCopyOption.REPLACE_EXISTING);
+ }
}
\ No newline at end of file