Commit Graph

655 Commits (bed40c6ee9ac981566383678d8b7cb07bcf598db)

Author SHA1 Message Date
Andy Wilkinson 6423535f67 Delete temp directory after MavenBuild has exected
Closes gh-33083
2 years ago
Andy Wilkinson b67c427259 Upgrade to Servlet 6.0 and related EE 10 specs
Co-authored-by: Phillip Webb <pwebb@vmware.com>

Closes gh-33036
Closes gh-33037
Closes gh-33038
Closes gh-33039
Closes gh-33040
Closes gh-33041
Closes gh-33042
Closes gh-33043
2 years ago
Scott Frederick 67af4c0a65 Polish documentation 2 years ago
Scott Frederick c22e76632c Add Build-Jdk-Spec to jar and war manifest when building with Gradle
This commit adds a `Build-Jdk-Spec` attribute to the manifest in a
jar or war file built with the Spring Boot Gradle plugin. This
aligns the Gradle plugin's behavior with the default Maven plugin
behavior.

This removes the need to set a `BP_JVM_VERSION` environment variable
when invoking Cloud Native Buildpacks, as the Paketo buildpacks will
honor `Build-Jdk-Spec` in a jar or war manifest to determine the
default JVM version.

Fixes gh-32829
2 years ago
Andy Wilkinson eebe23a081 Make all AOT-generated resources available to native-compile
Fixes gh-32841
2 years ago
Stephane Nicoll 4b778ff4c1 Polish Maven documentation to mention native profile 2 years ago
Andy Wilkinson d351086a06 Adapt to breaking changes to AOT processing entry points
See gh-32550
2 years ago
Andy Wilkinson 188cac6540 Protect against null run process customizer
See 0ee277b8c3
See gh-32607
2 years ago
Andy Wilkinson 0ee277b8c3 Ensure that run mojo's child process is killed when Maven is killed
Fixes gh-32607
2 years ago
Stephane Nicoll 44c843145a Add support for specifying application arguments
This commit makes sure that application arguments can be provided when
optimizing an application at build-time. It uses the same mechanism of
the regular run goal, merging the profile property if set.

Closes gh-32579
2 years ago
Stephane Nicoll 39cf17ed81 Add missing integration test for profile management in process-aot 2 years ago
Phillip Webb e0b67889a8 Use Stream.toList instead of Stream.collect when possible
Update code to make use of `Stream.toList()` whenever possible.

Closes gh-28177
2 years ago
Stephane Nicoll e2dd0ef9a4 Adapt AotProcessor to changes in Spring Framework
Closes gh-32560
2 years ago
Andy Wilkinson 51df7813a5 Remove code deprecated in 2.x and add since and forRemoval attributes
Closes gh-32548
Closes gh-32549
2 years ago
Madhura Bhave afce559050 Remove unused dependency from Maven integration test 2 years ago
Phillip Webb 20b91c5ae2 Include 'classesDirectory' in ProcessTestAotMojo classpath
Update `ProcessTestAotMojo` so that the classesDirectory and
the testClassesDirectory are on the classpath when compiling
code.

See gh-32191
2 years ago
Stephane Nicoll 88f2b33cc1 Add AOT-generated classes to classpath of the compiler
See gh-32304
2 years ago
Stephane Nicoll 5e24b5a110 Stop using RuntimeHintsUtils#registerAnnotation 2 years ago
Andy Wilkinson 746ed84120 Polish ProcessTestAotMojo 2 years ago
Phillip Webb 09bd531fe5 Add Maven plugin support for processing test contexts Ahead-of-time
Refactor and update the Spring Boot Maven Plugin so that it can
be used to perform AOT processing of test classes.

Closes gh-32191
2 years ago
Phillip Webb 2f6354f633 Rename 'aot-generate' goal to process-aot'
See gh-31918
2 years ago
Stephane Nicoll c67010ddd1 Make test more robust 2 years ago
Stephane Nicoll 4a00d76b85 Adapt integration tests to proxy changes in Spring Framework 2 years ago
Phillip Webb e08c16dfd6 Polish 2 years ago
Stephane Nicoll 41e8697445 Polish 2 years ago
Stephane Nicoll da324c8b03 Merge branch '2.7.x' 2 years ago
Stephane Nicoll 6786659aae Merge branch '2.6.x' into 2.7.x 2 years ago
Stephane Nicoll 7d860df5f0 Polish 2 years ago
Stephane Nicoll b0bc7cd85b Reuse JavaProcessExecutor
See gh-31682
2 years ago
Stephane Nicoll c3ae6519f4 Reuse SpringApplicationClassFinder
See gh-31682
2 years ago
Stephane Nicoll 472b0b8bcb Remove AbstractApplicationRunMojo intermediate layer
This commit reverts the intermediate layer that was created to
accommodate with the AOT use case.

See gh-31682
2 years ago
Stephane Nicoll 6f8b9288f3 Extract AotGenerateMojo to its own structure
This commit stops AotGenerateMojo from being an extension of the
regular run infrastructure and used the opportunity to extract a
number of utility classes to run a Java process.

As a result, not all features of running an application is supported
and exposed options now are targeted against AOT.

See gh-31682
2 years ago
Phillip Webb 7377d85096 Merge branch '2.7.x'
Closes gh-31866
2 years ago
Phillip Webb a4ef6a7c5c Merge branch '2.6.x' into 2.7.x
Closes gh-31865
2 years ago
Marc Wrobel dbfc6bded4 Fix typos in code and documentation
See gh-31734
2 years ago
Scott Frederick 6f65777035 Merge branch '2.7.x'
Closes gh-31827
2 years ago
Scott Frederick 9da38c8d2d Merge branch '2.6.x' into 2.7.x
Closes gh-31826
2 years ago
Scott Frederick 4e0b3aad9f Clarify how docker image publishing registry is determined
Closes gh-31820
2 years ago
Scott Frederick cf7a163c6d Merge branch '2.7.x' 2 years ago
Scott Frederick f9cf31e59e Fix compile errors
See gh-28844
2 years ago
Scott Frederick 36d6106bb0 Merge branch '2.7.x'
Closes gh-31825
2 years ago
Scott Frederick 09c7ce6dab Merge branch '2.6.x' into 2.7.x
Closes gh-31824
2 years ago
Scott Frederick 9b0cdac58a Simplify support for pushing images to unauthenticated registries
This commit removes the requirement that `docker.publishRegistry`
configuration must be provided when an image is published by the Gradle
or Maven plugin.

Fixes gh-28844
2 years ago
dreis2211 5db04da275 Use pattern matching for instanceof where appropriate
See gh-31475
2 years ago
dreis2211 fb45fc4819 Use Files.writeString() and Files.readString() where possible
See gh-31459
2 years ago
dreis2211 a639685053 Remove obsolete Java compatibility code
See gh-31452
2 years ago
Stephane Nicoll e2c42e4bbf Merge branch '2.7.x'
Closes gh-31262
2 years ago
Stephane Nicoll 8e550933a8 Merge branch '2.6.x' into 2.7.x
Closes gh-31261
2 years ago
Stephane Nicoll bbb5966bca Upgrade integration tests to Apache Maven 3.8.5
Closes gh-31260
2 years ago
Stephane Nicoll 1c94f835c7 Copy AOT-generated classes
Closes gh-31245
2 years ago
Stephane Nicoll 0dbcb5f6d3 Start building against Spring Framework 6.0.0-M5 snapshots
See gh-31241
3 years ago
Andy Wilkinson 36a60d8e2e Merge branch '2.7.x'
Closes gh-31181
3 years ago
Andy Wilkinson 137318a845 Merge branch '2.6.x' into 2.7.x
Closes gh-31180
3 years ago
Damiano Albani 3f91ed037f Fix Custom Layers Configuration section title in Maven plugin docs
See gh-31172
3 years ago
Andy Wilkinson 935d1264e0 Merge branch '2.6.x' into 2.7.x 3 years ago
Andy Wilkinson 14af1bb2dc Polish 3 years ago
Andy Wilkinson 5dfa5adb75 Merge branch '2.7.x'
Closes gh-31178
3 years ago
Andy Wilkinson 455ee0ce22 Merge branch '2.6.x' into 2.7.x
Closes gh-31177
3 years ago
Andy Wilkinson ee45fd2fc8 Remove redundant throws declarations from internal APIs
Closes gh-31176
3 years ago
Phillip Webb 68bd9d6b6d Merge branch '2.7.x' 3 years ago
Phillip Webb 06679a4c46 Merge branch '2.6.x' into 2.7.x
Closes gh-31128
3 years ago
Phillip Webb 9fa33e5645 Merge branch '2.5.x' into 2.6.x
Closes gh-31127
3 years ago
Phillip Webb 05a6447a8d Polish "Resolve errors in layers.xsd"
Validate loaded `layer.xml` files against the XSD and additionally
update `<layers>` sub elements to have a 'minOccurs' of 0.

See gh-31126
3 years ago
Liuzh 0d78323b60 Resolve errors in layers.xsd
Update `layer-*.xsd` files with following fixes:

- Rename <includeProjectDependencies> to <includeModuleDependencies>
- Rename <excludeProjectDependencies> to <excludeModuleDependencies>

See gh-31126
3 years ago
Andy Wilkinson c4beca3e01 Fix Maven-based AOT generation on Windows
Closes gh-30525
3 years ago
Phillip Webb f8a41d34aa Merge branch '2.7.x' 3 years ago
Andy Wilkinson bcc27c5d22 Deleting existing output before running AOT processing
Closes gh-30981
3 years ago
Andy Wilkinson 08768b5821 Join compile classpath using system-dependent separator
See gh-30525
3 years ago
Andy Wilkinson 0ce6e437a9 Align AotGenerateTests with spring.factories changes in Framework 3 years ago
Phillip Webb 8cf63a28b8 Update AOT work to latest Framework code 3 years ago
Andy Wilkinson 541ab69aff Merge branch '2.7.x' 3 years ago
Andy Wilkinson 4cd850cfc0 Merge branch '2.6.x' into 2.7.x
Closes gh-30851
3 years ago
Andy Wilkinson fa327a783d Merge branch '2.5.x' into 2.6.x
Closes gh-30850
3 years ago
Andy Wilkinson 4fd2e0c916 Polish "Fix typos"
See gh-30773
3 years ago
Andy Wilkinson f6d24dc1a8 Fix typos
See gh-30773
3 years ago
Stephane Nicoll e81c6337c6 Add support for invoking AOT to the Maven Plugin
This commit adds an `aot-generate` goal to the Maven Plugin that
triggers AOT generation on the application. The new goal shares a
number of properties with the existing `run` goal and uses the same
algorithm to detect the main class to use.

Closes gh-30525
3 years ago
Phillip Webb 7a6ca8ce25 Merge branch '2.7.x' 3 years ago
Phillip Webb dd5696b59b Update copyright year of changed files 3 years ago
Scott Frederick e32511516e Merge branch '2.7.x' 3 years ago
Scott Frederick ef79a18514 Use provided scope for Maven core dependencies in Maven plugin
Fixes gh-29520
3 years ago
Stephane Nicoll 5f66019706 Remove the ability to run an application in the Maven process
Closes gh-30501
3 years ago
Stephane Nicoll 13c9c1adb5 Merge branch '2.7.x' 3 years ago
Stephane Nicoll 2c5398898b Polish "Deprecate running an application in the Maven JVM"
See gh-30479
3 years ago
Stephane Nicoll c21b4a5280 Merge branch '2.7.x' 3 years ago
Stephane Nicoll 09696c90c7 Deprecate running an application in the Maven JVM
This commit deprecates the "fork" property so that the application
always runs in a dedicated process. This aligns with the behaviour of
the Gradle plugin, and simplifies the lifecycle of certain features that
would not work in a non-forked process.

Closes gh-30479
3 years ago
Scott Frederick 377b13c048 Merge branch '2.7.x' 3 years ago
Scott Frederick de321b00b7 Support podman for building images
Closes gh-30196
3 years ago
Scott Frederick 5e07db7d21 Merge branch '2.7.x' 3 years ago
Scott Frederick 7ad538cd84 Add option to use configured Docker host in builder
This commit adds support for a `docker.bindHostToBuilder` option in
the Maven and Gradle image building goal and task.

Fixes gh-29384
3 years ago
Stephane Nicoll 41fb9cf562 Merge branch '2.7.x' 3 years ago
Stephane Nicoll f812b33cbd Merge branch '2.6.x' into 2.7.x
Closes gh-29613
3 years ago
Stephane Nicoll 136b5959c3 Merge branch '2.5.x' into 2.6.x
Closes gh-29612
3 years ago
Stephane Nicoll 7f17f819a6 Polish "Enforce use of BDDMockito"
See gh-29178
3 years ago
Yanming Zhou b49418aaaf Enforce use of BDDMockito
1. Replace Mockito.verify*() with BDDMockito.then()
2. Replace Mockito.doReturn() with BDDMockito.willReturn()
3. Adjust checkstyle rule

See gh-29178
3 years ago
Andy Wilkinson f2ac7d10ef Merge branch '2.7.x' 3 years ago
Andy Wilkinson 8480abca20 Merge branch '2.6.x' into 2.7.x
Closes gh-29561
3 years ago
Andy Wilkinson fe43d527b5 Merge branch '2.5.x' into 2.6.x
Closes gh-29560
3 years ago
Andy Wilkinson 3ed65f2383 Avoid running Maven plugin ITs for each s-b-dependencies change
Closes gh-28781
3 years ago
Scott Frederick c78b157e95 Merge branch '2.7.x' 3 years ago
Scott Frederick 8f57f0babb Add classpath index support for exploded war archives
Update the Maven and Gradle packaging for war files so that a
`classpath.idx` file is written into the archive that provides the
original order of the classpath, as was previously done for jar files.
The `WarLauncher` class will use this file when running as an exploded
archive to ensure that the classpath order is the same as when running
from the far war.

Fixes gh-19875
3 years ago