This commit reverts partially what was done in gh-49397 to let docker
tests have access to additional maven repositories. Unfortunately, maven
build executions with the Spring Boot Maven Plugin do not use the BOM
for dependency management. As such, if one of the dependency requires
a dependency that has not been prepared in the local repository, it will
need to be able to download it from the relevant repository.
This is the case with spring-core that the maven plugin depends on when
Spring Framework and Spring Boot do not use the same Micrometer version:
the build prepares the version that Spring Boot uses, but the build
execution attempts to download the one that Spring Framework relies on.
Closes gh-51266
MainClassFinder.findSingleMainClass(JarFile, ...) does not close the
JarFile; the caller owns the resource. FindMainClass passed a newly
opened JarFile without closing it, unlike sibling call sites that use
try-with-resources.
See gh-50949
Signed-off-by: Sebastien Tardif <sebtardif@ncf.ca>
Change `spring-boot-tomcat-runtime` and `spring-boot-jetty-runtime`
into starter POMs and reduce the number of dependencies needed for
`spring-boot-tomcat` and `spring-boot-jetty`.
The runtime starters provide only the jars required to run the
embedded server along with the module jar itself (excluding transitive
dependencies) and `spring-boot-webserver` (excluding transitive
dependencies).
The build setup required for an executable jar is slightly different
between Maven and Gradle. For Maven, the regular module is put in the
`provided` scope. For Gradle, the regular module remains in main
configuration and the runtime jar is put in the `providedRuntime`
configuration. The reference documentation has been updated to
show how to configure things if starters are being used.
Manual testing has been performed to ensure that wars build with Maven
and Gradle work with both Tomcat and Jetty in both deployed and
`java -jar` modes.
Closes gh-48175
* Update dependencies name
Modules are prefixed with `testcontainers-`
* Update container classes
Container classes are under `org.testcontainers.<module-name>` package
See gh-47664
Signed-off-by: Eddú Meléndez <eddu.melendez@gmail.com>
This also removes the 'requiredVersion' setting from the
native-maven-plugin configuration, as this is deprecated in the native
build tools.
Close gh-47433