Restructure project directories to better fit Gradle

Closes gh-46358
This commit is contained in:
Phillip Webb
2025-07-10 17:54:08 -07:00
parent eec3e9b436
commit decc32dde3
10576 changed files with 3501 additions and 3403 deletions
+17
View File
@@ -0,0 +1,17 @@
^\Q/*\E$
^\Q * Copyright \E2012-present\Q the original author or authors.\E$
^\Q *\E$
^\Q * Licensed under the Apache License, Version 2.0 (the "License");\E$
^\Q * you may not use this file except in compliance with the License.\E$
^\Q * You may obtain a copy of the License at\E$
^\Q *\E$
^\Q * https://www.apache.org/licenses/LICENSE-2.0\E$
^\Q *\E$
^\Q * Unless required by applicable law or agreed to in writing, software\E$
^\Q * distributed under the License is distributed on an "AS IS" BASIS,\E$
^\Q * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\E$
^\Q * See the License for the specific language governing permissions and\E$
^\Q * limitations under the License.\E$
^\Q */\E$
^$
^.*$
@@ -0,0 +1,87 @@
<?xml version="1.0"?>
<!DOCTYPE suppressions PUBLIC
"-//Checkstyle//DTD SuppressionFilter Configuration 1.2//EN"
"https://checkstyle.org/dtds/suppressions_1_2.dtd">
<suppressions>
<suppress files="ConditionEvaluationReportLoggerTests\.java" checks="IllegalImport" />
<suppress files="ConditionEvaluationReportLoggingListenerTests\.java" checks="IllegalImport" />
<suppress files="ConditionEvaluationReportLoggingProcessorTests\.java" checks="IllegalImport" />
<suppress files="LoggingApplicationListenerTests\.java" checks="IllegalImport" />
<suppress files="LogbackInitializer\.java" checks="IllegalImport" />
<suppress files="LogbackLoggingSystem\.java" checks="IllegalImport" />
<suppress files="LogbackLoggingSystemTests\.java" checks="IllegalImport" />
<suppress files="LogbackLoggingSystemParallelInitializationTests\.java" checks="IllegalImport" />
<suppress files="LogbackConfigurationAotContributionTests\.java" checks="IllegalImport" />
<suppress files="MetricsAutoConfigurationMeterRegistryPostProcessorIntegrationTests\.java" checks="IllegalImport" message="LoggerFactory"/>
<suppress files="SpringApplicationTests\.java" checks="FinalClass" />
<suppress files=".+Configuration\.java" checks="HideUtilityClassConstructor" />
<suppress files=".+Application\.java" checks="HideUtilityClassConstructor" />
<suppress files="SignalUtils\.java" checks="IllegalImport" />
<suppress files="OrderedFilter\.java" checks="InterfaceIsType" />
<suppress files="OrderedWebFilter\.java" checks="InterfaceIsType" />
<suppress files="[\\/]src[\\/]test[\\/]java[\\/]cli[\\/]command[\\/]" checks="ImportControl" />
<suppress files="[\\/]src[\\/]main[\\/]java[\\/]sample[\\/]" checks="ImportControl" />
<suppress files="[\\/]src[\\/]test[\\/]java[\\/]sample[\\/]" checks="ImportControl" />
<suppress files="[\\/]src[\\/]test(Fixtures)?[\\/]java[\\/]" checks="Javadoc*" />
<suppress files="[\\/]src[\\/]test[\\/]java[\\/]" id="mainCodeIllegalImportCheck" />
<suppress files="[\\/]src[\\/]test[\\/]java[\\/]" checks="NonEmptyAtclauseDescription" />
<suppress files="[\\/]autoconfigure[\\/].*Properties\.java" checks="JavadocType" />
<suppress files="[\\/]autoconfigure[\\/].*Properties\.java" checks="JavadocVariable" />
<suppress files="[\\/]spring-boot-docs[\\/]" checks="JavadocPackage|JavadocType|JavadocVariable|SpringDeprecatedCheck" />
<suppress files="[\\/]spring-boot-docs[\\/]" checks="SpringJavadoc" message="\@since" />
<suppress files="[\\/]spring-boot-docs[\\/].*jooq" checks="AvoidStaticImport" />
<suppress files="[\\/]spring-boot-docs[\\/].*MyConfiguration__BeanDefinitions" checks="JavadocMethod|SpringHideUtilityClassConstructor" />
<suppress files="[\\/]smoke-test[\\/]" checks="JavadocPackage|JavadocType" />
<suppress files="[\\/]smoke-test[\\/]" checks="ImportControl" />
<suppress files="[\\/]smoke-test[\\/].*SamplePulsarApplicationTests" checks="SpringHideUtilityClassConstructor" />
<suppress files="[\\/]smoke-test[\\/]" id="mainCodeIllegalImportCheck" />
<suppress files="[\\/]system-test[\\/]spring-boot-deployment-system-tests[\\/]" checks="JavadocPackage|JavadocType" />
<suppress files="[\\/]spring-boot-integration-tests[\\/]" checks="JavadocType" />
<suppress files="Ansi.*\.java" checks="JavadocVariable" />
<suppress files="Ansi.*\.java" checks="JavadocStyle" />
<suppress files="LogLevel\.java" checks="JavadocVariable" />
<suppress files="HelpMojo\.java" checks=".*"/>
<suppress files="[\\/]org.springframework.boot.configurationprocessor.json[\\/].*\.java$" checks=".*" />
<suppress files="TripType\.java" checks="JavadocVariable" />
<suppress files="Rating\.java" checks="JavadocVariable" />
<suppress files="Direction\.java" checks="JavadocVariable" />
<suppress files="LoggingApplicationListenerIntegrationTests\.java" checks="IllegalImport" />
<suppress files="SpringBootJoranConfiguratorTests\.java" checks="IllegalImport" />
<suppress files="LogbackMetricsAutoConfiguration\.java" checks="IllegalImport" />
<suppress files="RemoteUrlPropertyExtractorTests\.java" checks="IllegalImport" />
<suppress files="SampleLogbackApplication\.java" checks="IllegalImport" />
<suppress files="FlywayAutoConfigurationTests\.java" checks="IllegalImport" />
<suppress files="[\\/]src[\\/]test[\\/]java[\\/]org[\\/]springframework[\\/]boot[\\/]test[\\/]rule[\\/]" checks="SpringJUnit5" />
<suppress files="MockBeanWithSpringMethodRuleRepeatJUnit4IntegrationTests" checks="SpringJUnit5" />
<suppress files="OutputCaptureRuleTests" checks="SpringJUnit5" />
<suppress files="SampleJUnitVintageApplicationTests" checks="SpringJUnit5" />
<suppress files="[\\/]smoke-test[\\/]" checks="SpringJavadoc" message="\@since" />
<suppress files="[\\/]smoke-test[\\/]spring-boot-smoke-test-testng[\\/]" checks="SpringJUnit5" />
<suppress files="[\\/]test-support[\\/]" checks="SpringJavadoc" message="\@since" />
<suppress files="[\\/]src[\\/]dockerTest[\\/]java[\\/]" checks="JavadocPackage" />
<suppress files="[\\/]src[\\/]dockerTest[\\/]java[\\/]" checks="SpringJavadoc" message="\@since" />
<suppress files="[\\/]src[\\/]intTest[\\/]java[\\/]" checks="JavadocPackage" />
<suppress files="[\\/]src[\\/]intTest[\\/]java[\\/]" checks="SpringJavadoc" message="\@since" />
<suppress files="[\\/]src[\\/]systemTest[\\/]java[\\/]" checks="JavadocPackage" />
<suppress files="[\\/]src[\\/]systemTest[\\/]java[\\/]" checks="SpringJavadoc" message="\@since" />
<suppress files="LinuxDomainSocket" checks="FinalClass" message="SockaddrUn" />
<suppress files="BsdDomainSocket" checks="FinalClass" message="SockaddrUn" />
<suppress files="StringSequence" checks="SpringMethodVisibility" message="isEmpty"/>
<suppress files="ValidatorPropertiesWithDefaultValues\.java" checks="SpringMethodVisibility" />
<suppress files="DeprecatedElasticsearchRestClientProperties\.java" checks="SpringMethodVisibility" />
<suppress files="DeprecatedElasticsearchRestClientProperties\.java" checks="SpringMethodVisibility" />
<suppress files="DeprecatedReactiveElasticsearchRestClientProperties\.java" checks="SpringMethodVisibility" />
<suppress files="DevToolsTestApplication\.java" checks="SpringMethodVisibility" />
<suppress files="DevToolsR2dbcAutoConfigurationTests" checks="HideUtilityClassConstructor" />
<suppress files="ConfigurationMetadataChangelogGenerator" checks="SpringMethodVisibility" />
<suppress files="AbstractLaunchScriptIntegrationTests" checks="IllegalImport" />
<suppress files="FailureAnalyzers\.java" checks="RedundantModifier" />
<suppress files="SpringBootVersion" checks="JavadocPackage" />
<suppress files="spring-boot-configuration-processor[\\/]src[\\/]test[\\/]java[\\/]org[\\/]springframework[\\/]boot[\\/]configurationsample[\\/]" checks="SpringDeprecatedCheck"/>
<suppress files="ImportTestcontainersTests\.java" checks="InterfaceIsType" />
<suppress files="MyContainers\.java" checks="InterfaceIsType" />
<suppress files="MyInterface\.java" checks="InterfaceIsType" />
<suppress files="SpringBootBanner\.java" checks="SpringLeadingWhitespace" />
<suppress files="LoadTimeWeaverAwareConsumerContainers\.java" checks="InterfaceIsType" />
<suppress files="ConfigurationPropertyCaching\.java" checks="SpringJavadoc" message="\@since"/>
</suppressions>
+81
View File
@@ -0,0 +1,81 @@
<?xml version="1.0"?>
<!DOCTYPE module PUBLIC
"-//Checkstyle//DTD Checkstyle Configuration 1.3//EN"
"https://checkstyle.org/dtds/configuration_1_3.dtd">
<module name="com.puppycrawl.tools.checkstyle.Checker">
<module name="SuppressionFilter">
<property name="file" value="${config_loc}/checkstyle-suppressions.xml"/>
</module>
<module name="io.spring.javaformat.checkstyle.SpringChecks" />
<module name="com.puppycrawl.tools.checkstyle.TreeWalker">
<module name="io.spring.javaformat.checkstyle.check.SpringDeprecatedCheck" />
<module name="io.spring.javaformat.checkstyle.check.SpringJUnit5Check" />
<module
name="com.puppycrawl.tools.checkstyle.checks.imports.IllegalImportCheck">
<property name="regexp" value="true" />
<property name="illegalPkgs"
value="^sun.*, ^org\.apache\.commons\.(?!compress|dbcp2|logging|pool2).*, ^com\.datastax\.oss\.driver\.shaded.*, ^com\.google\.common.*, ^io\.micrometer\.core\.lang.*, ^io\.micrometer\.shaded.*, ^org\.jetbrains\.annotations.*, ^org\.testcontainers\.shaded.*,
^org\.apache\.commons\.compress\.utils" />
<property name="illegalClasses"
value="^com\.hazelcast\.util\.Base64, ^org\.junit\.rules\.ExpectedException, ^org\.mockito\.InjectMocks, ^org\.slf4j\.LoggerFactory, ^org.springframework.context.annotation.ScannedGenericBeanDefinition, ^(?!org\.springframework\.core\.).*ResolvableType, ^(?!org\.springframework\.util\.).*ReflectionUtils, ^reactor\.core\.support\.Assert"/>
</module>
<module
name="com.puppycrawl.tools.checkstyle.checks.imports.IllegalImportCheck">
<property name="id" value="mainCodeIllegalImportCheck"/>
<property name="regexp" value="true" />
<property name="illegalClasses"
value="javax.annotation.PostConstruct, jakarta.annotation.PostConstruct"/>
<property name="illegalPkgs"
value="^io\.opentelemetry\.semconv.*, ^org\.gradle\.(?!api).*\.tasks.*"/>
</module>
<module
name="com.puppycrawl.tools.checkstyle.checks.imports.ImportControlCheck">
<property name="file"
value="${config_loc}/import-control.xml" />
<property name="path" value="^.*[\\/]src[\\/]main[\\/].*$" />
</module>
<module name="com.puppycrawl.tools.checkstyle.checks.regexp.RegexpSinglelineJavaCheck">
<property name="maximum" value="0"/>
<property name="format" value="org\.junit\.Assert|org\.junit\.jupiter\.api\.Assertions" />
<property name="message"
value="Please use AssertJ imports." />
<property name="ignoreComments" value="true" />
</module>
<module
name="com.puppycrawl.tools.checkstyle.checks.regexp.RegexpSinglelineJavaCheck">
<property name="maximum" value="0" />
<property name="format"
value="assertThatExceptionOfType\((NullPointerException|IllegalArgumentException|IOException|IllegalStateException)\.class\)" />
<property name="message"
value="Please use specialized AssertJ assertThat*Exception method." />
<property name="ignoreComments" value="true" />
</module>
<module
name="com.puppycrawl.tools.checkstyle.checks.regexp.RegexpSinglelineJavaCheck">
<property name="maximum" value="0" />
<property name="format"
value="assertThatThrownBy\(" />
<property name="message"
value="Please use AssertJ assertThatExceptionOfType method." />
<property name="ignoreComments" value="true" />
</module>
<module name="com.puppycrawl.tools.checkstyle.checks.regexp.RegexpSinglelineJavaCheck">
<property name="maximum" value="0"/>
<property name="format" value="org\.mockito\.(Mockito|BDDMockito)\.(when|doThrow|doAnswer|doReturn|verify|verifyNoInteractions|verifyNoMoreInteractions)" />
<property name="message"
value="Please use BDD-style (given, when, then) using BDDMockito imports." />
<property name="ignoreComments" value="true" />
</module>
<module name="com.puppycrawl.tools.checkstyle.checks.regexp.RegexpSinglelineJavaCheck">
<property name="maximum" value="0"/>
<property name="format" value="(List|Map|Set)\.of\(\)" />
<property name="message"
value="Please use Collections.emptyList()/emptyMap()/emptySet() for creating empty lists/maps/sets." />
<property name="ignoreComments" value="true" />
</module>
<module name="io.spring.javaformat.checkstyle.check.SpringJavadocCheck">
<property name="publicOnlySinceTags" value="true" />
<property name="requireSinceTag" value="true" />
</module>
</module>
</module>
+210
View File
@@ -0,0 +1,210 @@
<?xml version="1.0"?>
<!DOCTYPE import-control PUBLIC "-//Checkstyle//DTD ImportControl Configuration 1.4//EN" "https://checkstyle.org/dtds/import_control_1_4.dtd">
<import-control pkg="org.springframework.boot">
<allow pkg="io.micrometer.observation" />
<disallow pkg="io.micrometer" />
<disallow pkg="org.springframework.lang" />
<allow pkg=".*" regex="true" />
<subpackage name="autoconfigure">
<disallow class="org.springframework.boot.autoconfigure.jdbc.DataSourceProperties"/>
<subpackage name="web">
<allow pkg="org.springframework.boot.web.server" />
<allow pkg="org.springframework.boot.web.servlet.server" />
<disallow pkg="org.springframework.boot.web" />
<disallow pkg="org.springframework.web.servlet" />
<disallow pkg="org.springframework.web.reactive" />
<disallow pkg="jakarta.servlet" />
<subpackage name="client">
<allow pkg="org.springframework.boot.web.client" />
</subpackage>
<subpackage name="server">
<allow pkg="org.springframework.boot.web.server" />
<subpackage name="reactive">
<allow pkg="org.springframework.boot.web.reactive.server" />
</subpackage>
<subpackage name="servlet">
<allow pkg="jakarta.servlet" />
<allow pkg="org.springframework.boot.web.servlet" />
<allow pkg="org.springframework.boot.web.error" />
<allow pkg="org.springframework.web.servlet" />
</subpackage>
</subpackage>
<subpackage name="servlet">
<allow pkg="jakarta.servlet" />
<allow pkg="org.springframework.boot.web.servlet" />
<allow pkg="org.springframework.web.servlet" />
<subpackage name="error">
<allow pkg="org.springframework.boot.web.error" />
</subpackage>
</subpackage>
<subpackage name="reactive">
<allow pkg="org.springframework.boot.web.codec" />
<allow pkg="org.springframework.boot.web.reactive" />
<allow pkg="org.springframework.web.reactive" />
<subpackage name="error">
<allow pkg="org.springframework.boot.web.error" />
</subpackage>
</subpackage>
</subpackage>
</subpackage>
<subpackage name="metrics">
<allow pkg="io.micrometer" />
</subpackage>
<subpackage name=".*\.metrics" regex="true">
<allow pkg="io.micrometer" />
</subpackage>
<subpackage name=".*\.autoconfigure" regex="true">
<allow pkg="io.micrometer" />
</subpackage>
<subpackage name="[^.]+\.actuate" regex="true">
<subpackage name="endpoint">
<file name=".*Endpoint(WebExtension)?" regex="true">
<allow pkg="org.springframework.lang"/>
</file>
</subpackage>
</subpackage>
<subpackage name="actuate">
<!-- Endpoint infrastructure -->
<subpackage name="endpoint">
<disallow pkg="org.springframework.http" />
<disallow pkg="org.springframework.web" />
<subpackage name="invoke">
<subpackage name="reflect">
<file name="OperationMethodParameter">
<allow pkg="org.springframework.lang"/>
</file>
</subpackage>
</subpackage>
<subpackage name="web">
<allow pkg="org.springframework.http" />
<allow pkg="org.springframework.web" />
<subpackage name="servlet">
<disallow pkg="org.springframework.web.reactive" />
</subpackage>
<subpackage name="reactive">
<disallow pkg="org.springframework.web.servlet" />
</subpackage>
</subpackage>
</subpackage>
</subpackage>
<subpackage name="docs">
<allow pkg="io.micrometer" />
</subpackage>
<!-- Logging -->
<subpackage name="logging">
<allow pkg="org.springframework.boot.context.properties" />
<allow pkg="org.springframework.boot.context.properties.bind" />
<allow pkg="org.springframework.context.aot" />
<disallow pkg="org.springframework.context" />
<disallow pkg="org.springframework.boot.context" />
</subpackage>
<subpackage name="test">
<subpackage name="autoconfigure">
<subpackage name="actuate">
<allow pkg="io.micrometer" />
</subpackage>
</subpackage>
</subpackage>
<!-- Web related concerns -->
<subpackage name="web">
<!-- Lock things down -->
<disallow pkg="org.springframework.boot.web" />
<disallow pkg="org.springframework.web.servlet" />
<disallow pkg="jakarta.servlet" />
<!-- Common -->
<subpackage name="client">
</subpackage>
<subpackage name="context">
<allow pkg="org.springframework.context" />
<subpackage name="servlet">
<allow pkg="org.springframework.boot.web.servlet" />
<allow pkg="jakarta.servlet" />
</subpackage>
</subpackage>
<subpackage name="server">
<allow pkg="org.springframework.boot.web.error" />
<allow pkg="org.springframework.boot.web.server" />
<disallow pkg="org.springframework.context" />
<subpackage name="autoconfigure">
<allow pkg="org.springframework.context" />
<subpackage name="servlet">
<allow pkg="jakarta.servlet" />
<allow pkg="org.springframework.boot.web.servlet" />
</subpackage>
</subpackage>
<subpackage name="context">
<allow pkg="org.springframework.context" />
</subpackage>
<subpackage name="reactive">
<subpackage name="context">
<allow pkg="org.springframework.context" />
<allow pkg="org.springframework.web.context" />
<allow pkg="org.springframework.boot.web.context.reactive" />
</subpackage>
</subpackage>
<subpackage name="servlet">
<allow pkg="jakarta.servlet" />
<allow pkg="org.springframework.boot.web.servlet" />
<subpackage name="context">
<allow pkg="org.springframework.context" />
<allow pkg="org.springframework.web.context" />
<allow pkg="org.springframework.boot.web.context.servlet" />
</subpackage>
</subpackage>
<subpackage name="test">
<allow pkg=".*" regex="true" />
</subpackage>
</subpackage>
<!-- Servlet -->
<subpackage name="servlet">
<allow pkg="jakarta.servlet" />
<subpackage name="filter">
<allow pkg="jakarta.servlet" />
<allow pkg="org.springframework.boot.web.servlet" />
</subpackage>
<subpackage name="support">
<allow pkg="jakarta.servlet" />
<allow pkg="org.springframework.boot.web.error" />
<allow pkg="org.springframework.boot.web.context.servlet" />
<allow pkg="org.springframework.boot.web.servlet" />
</subpackage>
<subpackage name="view">
<allow pkg="org.springframework.web.servlet" />
</subpackage>
<subpackage name="error">
<allow pkg="org.springframework.boot.web.error" />
<allow pkg="org.springframework.web.servlet" />
</subpackage>
</subpackage>
<!-- Reactive -->
<subpackage name="reactive">
<subpackage name="context">
<allow pkg="org.springframework.boot.web.context" />
</subpackage>
<subpackage name="error">
<allow pkg="org.springframework.boot.web.error" />
</subpackage>
<subpackage name="result">
<subpackage name="view">
<allow pkg="org.springframework.boot.web.reactive.result.view" />
</subpackage>
</subpackage>
</subpackage>
</subpackage>
</import-control>
+25
View File
@@ -0,0 +1,25 @@
config:
validation: true
warningsAsErrors: true
console-reports:
active: true
exclude:
- 'ProjectStatisticsReport'
- 'ComplexityReport'
- 'NotificationReport'
- 'FindingsReport'
- 'FileBasedFindingsReport'
processors:
active: false
naming:
MatchingDeclarationName:
active: true
style:
MaxLineLength:
active: true
NewLineAtEndOfFile:
active: true
UnusedImports:
active: true
WildcardImport:
active: true
+7
View File
@@ -0,0 +1,7 @@
^http://ganglia.sourceforge.net.*
^http://livereload.com/.*
^http://schemas.xmlsoap.org/.*
^http://www.jdotsoft.com.*
^http://www.liquibase.org/xml/ns/dbchangelog/.*
^http://www.w3.org/2000/09/xmldsig.*
^http://www.jooq.org/xsd/jooq-runtime-.*
+13
View File
@@ -0,0 +1,13 @@
<!DOCTYPE module PUBLIC "-//Puppy Crawl//DTD Check Configuration 1.3//EN"
"https://www.puppycrawl.com/dtds/configuration_1_3.dtd">
<module name="Checker">
<property name="charset" value="UTF-8"/>
<property name="fileExtensions" value=""/>
<module name="io.spring.nohttp.checkstyle.check.NoHttpCheck">
<property name="allowlistFileName" value="${config_loc}/allowlist.lines"/>
</module>
<module name="SuppressionFilter">
<property name="file" value="${config_loc}/suppressions.xml"/>
</module>
<module name="SuppressWithPlainTextCommentFilter"/>
</module>
+16
View File
@@ -0,0 +1,16 @@
<?xml version="1.0"?>
<!DOCTYPE suppressions PUBLIC
"-//Checkstyle//DTD SuppressionFilter Configuration 1.2//EN"
"https://checkstyle.org/dtds/suppressions_1_2.dtd">
<suppressions>
<suppress files="[\\/]transaction-logs[\\/]" checks="NoHttp" />
<suppress files="[\\/]build.log" checks="NoHttp" />
<suppress files=".+\.(jar|git|ico|p12|gif|jks|jpg|svg)" checks="NoHttp" />
<suppress files="jquery.validate.js" checks="NoHttp" />
<suppress files="jquery-[0-9]\.[0-9]\.[0-9].js" checks="NoHttp" />
<suppress files="[\\/]spring-boot-project.setup" checks="NoHttp" />
<suppress files="DockerHostTests\.java" checks="NoHttp" />
<suppress files="cyclonedx\.json" checks="NoHttp" />
<suppress files="spdx\.json" checks="NoHttp" />
<suppress files="syft\.json" checks="NoHttp" />
</suppressions>