957 Commits

Author SHA1 Message Date
Stéphane Nicoll
1822b2fade Include spring-boot-starter-parent in Integration tests repository
This commit makes sure that integration tests for the Maven Plugin have
access to the current "spring-boot-starter-parent" pom and its
hierarchy as new integration tests rely on that.

Closes gh-42000
2024-08-22 16:46:52 +02:00
Andy Wilkinson
e9da0c237e Correct grammar in 'Running your Application with Maven'
Closes gh-41868
2024-08-15 10:38:57 +01:00
Andy Wilkinson
9a4c17016d Merge branch '3.3.x'
Closes gh-41869
2024-08-15 10:37:25 +01:00
John Blum
e6f89c13a3 Correct grammar in 'Running your Application with Maven'
See gh-41840
2024-08-15 10:36:29 +01:00
Stéphane Nicoll
90f847d454 Merge branch '3.3.x'
Closes gh-41696
2024-08-05 16:29:32 +02:00
Stéphane Nicoll
7607bf1ab8 Document that repackage should not be used on the command-line
This commit clarifies how we intend the spring-boot:repackage goal to
be used. As it operates on the source jar (or war) that must be
effectively up-to-date to produce an accurate result, the package phase
must have run.

Contrary to build-image that was designed to be used on the command-line
by forking a package lifecycle first, repackage does not do that. This
commit also clarifies that by providing a more focused error message.

Closes gh-22317
2024-08-05 16:16:09 +02:00
Stéphane Nicoll
e49a2daf38 Merge branch '3.3.x'
Closes gh-41662
2024-07-31 17:04:21 +02:00
Stéphane Nicoll
8ea6d3c92e Merge branch '3.2.x' into 3.3.x
Closes gh-41661
2024-07-31 17:04:01 +02:00
Stéphane Nicoll
200fc15b5d Detect backup jar when the package lifecycle is forked
Previously, if a classifier was set and build-image was executed from
the command-line, the build will fail as the plugin was unable to find
the original jar. This is because it relies on the attached artifacts
of the project, and those are not set when package has run as part of
a forked lifecycle.

This commit makes sure that the backup file is found by convention
first, the same way it is done for the target file.

Closes gh-26721
2024-07-31 17:01:00 +02:00
Scott Frederick
dfab18c965 Add imagePlatform option for image building
An `imagePlatform` option for the Maven and Gradle image-building
goal/task can be used to specify the os/architecture of any
builder, run, and buildpack images that are pulled during image
building.

Closes gh-40944
2024-07-30 14:19:40 -05:00
Stéphane Nicoll
3e7412fe7e Merge branch '3.3.x'
Closes gh-41653
2024-07-30 11:23:48 +02:00
Stéphane Nicoll
e05a846a1c Merge branch '3.2.x' into 3.3.x
Closes gh-41652
2024-07-30 11:23:39 +02:00
Stéphane Nicoll
59b47e336b Remove invalid checksum policy setting
This might be a copy/paste error as the checksum policy is used for
deploying and our integration tests do not do that.

Closes gh-41651
2024-07-30 11:20:44 +02:00
Stéphane Nicoll
8ef5540624 Merge branch '3.3.x'
Closes gh-41648
2024-07-30 10:58:38 +02:00
Stéphane Nicoll
397aeee9b6 Merge branch '3.2.x' into 3.3.x
Closes gh-41647
2024-07-30 10:58:31 +02:00
Stéphane Nicoll
05468def54 Tolerate module-info with AOT processing
This commit updates the Maven Plugin to tolerate projects that are using
the module path on the JVM and targeting native images with AOT.

Previously, the plugin compiled AOT sources directly to target/classes
and the presence of a module-info there is enough to trigger a
compilation on the module path.

With this change we now compile in a separate directory that contains
the generated AOT classes (typically CGLIB proxies). These are copied to
target/classes once compilation completes already.

The integration test also uses our parent, rather than relying on what
Maven provides. That's because older Maven versions provide a default
compiler plugin version that did not handle the module path correctly.

Closes gh-33383
2024-07-30 10:56:06 +02:00
Stéphane Nicoll
6ab053d823 Merge branch '3.3.x'
Closes gh-41642
2024-07-29 16:56:29 +02:00
Stéphane Nicoll
a63a1fe6c5 Merge branch '3.2.x' into 3.3.x
Closes gh-41641
2024-07-29 16:56:18 +02:00
Stéphane Nicoll
47465f6ed5 Do not validate settings if publishing is disabled
This commit improves the Maven Plugin to only validate the publishing
settings if publishing is actually enabled.

Closes gh-29756
2024-07-29 16:55:02 +02:00
Phillip Webb
fdd5d007f5 Merge branch '3.3.x' 2024-07-25 20:49:42 +01:00
Phillip Webb
28faf12062 Migrate plugins to javadoc asciidoctor macro
See gh-41605
2024-07-25 20:49:02 +01:00
Phillip Webb
84e2049fc5 Merge branch '3.3.x' 2024-07-25 18:25:23 +01:00
Phillip Webb
fd58261b9d Revert "Migrate plugins to javadoc asciidoctor macro"
This reverts commit b63e1e7443efa374e39fb2ba8b69caf98ad3eb0b.
2024-07-25 18:25:15 +01:00
Phillip Webb
7bbb5003db Merge branch '3.3.x' 2024-07-25 18:05:04 +01:00
Phillip Webb
b63e1e7443 Migrate plugins to javadoc asciidoctor macro
See gh-41605
2024-07-25 18:03:37 +01:00
Phillip Webb
000600c68a Merge branch '3.3.x' 2024-07-22 18:41:53 +01:00
Phillip Webb
36b1214feb Merge branch '3.2.x' into 3.3.x 2024-07-22 18:30:45 +01:00
Phillip Webb
61dc82d836 Update copyright year of changed files 2024-07-22 18:16:19 +01:00
Scott Frederick
224b06982e Add support for untrusted CNB builders
A `trustBuilder` configuration option has been added to the Maven and
Gradle CNB integration image building goal and task. A known set of
builders published by Paketo, Heroku, and Google are trusted by default,
all other builders are untrusted by default.

Closes gh-41352
2024-07-11 13:51:54 -05:00
Andy Wilkinson
375b3b16a0 Remove APIs that were deprecated for removal in 3.4.0
Closes gh-41435
2024-07-10 13:31:21 +01:00
Scott Frederick
17c5538062 Merge branch '3.3.x' 2024-07-01 11:24:00 -05:00
Scott Frederick
70e14d648d Polish documentation headings
Title case should be used in all headings.
2024-07-01 11:23:41 -05:00
Scott Frederick
26b59ae912 Use Paketo tiny builder by default for JVM and native apps
Closes gh-40859
2024-06-28 11:45:54 -05:00
Andy Wilkinson
99904d0307 Merge branch '3.3.x'
Closes gh-41274
2024-06-28 16:01:46 +01:00
Andy Wilkinson
55ac058385 Merge branch '3.2.x' into 3.3.x
Closes gh-41273
2024-06-28 15:47:54 +01:00
Andy Wilkinson
d71fdd9712 Make buildSrc's custom Gradle tasks consistently abstract
Closes gh-41272
2024-06-28 15:40:56 +01:00
Andy Wilkinson
1521258695 Merge branch '3.3.x'
Closes gh-41269
2024-06-28 12:13:38 +01:00
Andy Wilkinson
ac8a3b6332 Merge branch '3.2.x' into 3.3.x
Closes gh-41268
2024-06-28 12:12:15 +01:00
Andy Wilkinson
a195394be6 Merge branch '3.3.x' 2024-06-28 11:41:37 +01:00
Andy Wilkinson
7f2e8f85ae Merge branch '3.2.x' into 3.3.x 2024-06-28 11:40:48 +01:00
Andy Wilkinson
365fdfee45 Reduce scope of mavenOptional feature to only the Maven Plugin
Previously, the mavenOptional was added to every published module but it
was only used by spring-boot-maven-plugin. This commit reduces its scope
so that it only affects the Maven plugin. It also reworks the
implementation to reuse the existing optional configuration rather than
declaring a new mavenOptional configuration. Lastly, publication of
Gradle Module Metadata (GMM) has been disabled for
spring-boot-maven-plugin. This is seen as preferable to publishing the
metadata – which isn't really needed as it does not contain any useful
additional information – and having to suppress warnings about
incomplete mapping of GMM to pom metadata.

Closes gh-41263
2024-06-28 11:39:46 +01:00
Andy Wilkinson
2ed72c6e4d Correct syntax for plexus-utils exclusion
See 07442f836600fc346db49b8c0640f3977be18dfd
See gh-41248
2024-06-28 11:39:46 +01:00
Andy Wilkinson
13ab5618a6 Merge branch '3.3.x' 2024-06-27 13:08:38 +01:00
Andy Wilkinson
0df946ccad Fix botched merge of spring-boot-maven-plugin's build.gradle 2024-06-27 13:06:44 +01:00
Andy Wilkinson
5b7365b63b Merge branch '3.3.x'
Closes gh-41258
2024-06-27 10:25:32 +01:00
Andy Wilkinson
b0d4f1d356 Merge branch '3.2.x' into 3.3.x
Closes gh-41257
2024-06-27 10:16:36 +01:00
Scott Frederick
9da2d1e089 Revert "Use Paketo tiny builder by default for JVM and native apps"
This reverts commit 6d2ebc07133da5e3ebbbe02148b475eb405e3c51.
2024-06-26 15:25:37 -05:00
Andy Wilkinson
654016af7f Move Docker-related test support into a separate module
See gh-41228
2024-06-26 19:47:35 +01:00
Andy Wilkinson
89a06608d2 Update spring-boot-maven-plugin to use docker-test plugin
See gh-41228
2024-06-26 19:46:29 +01:00
Scott Frederick
6d2ebc0713 Use Paketo tiny builder by default for JVM and native apps
Closes gh-40859
2024-06-26 13:42:23 -05:00