Scott Frederick
f9c341c75a
Revert "Generate the AutoConfiguration.imports file from annotations"
...
This reverts commit da4de7d67d442771704fba268f33fbc90aaaf1aa.
2022-09-21 14:50:15 -05:00
Scott Frederick
d62d7ca75d
Revert "Generate ManagementContextConfiguration.imports file from annotations"
...
This reverts commit 6b3b0dd3a6ac4818388e97e121de69a91e21657d.
2022-09-21 14:50:15 -05:00
Scott Frederick
1f53eb7df9
Revert "Sort the contents of generated imports files"
...
This reverts commit 95e62b7ff822d0179850b3eb9baf6f0e0d89eb2e.
2022-09-21 14:50:15 -05:00
Scott Frederick
910e9c9fcc
Revert "Fix windows build"
...
This reverts commit 9fe24fe6929099243ab8aecceeed88ed48b24860.
2022-09-21 14:50:15 -05:00
Andy Wilkinson
4a80b36160
Configure native image classpath outside of task realisation
...
Closes gh-32465
2022-09-21 18:14:46 +01:00
Andy Wilkinson
6175c4210d
Fix skipping of processAot when there is no main source
...
See gh-32424
2022-09-21 14:57:54 +01:00
Andy Wilkinson
fa81e8ca79
Skip processAot and processTestAot if there is no main or test code
...
Closes gh-32424
2022-09-20 17:15:19 +01:00
Andy Wilkinson
e8aa5680d6
Support file-based reachability metadata repositories
...
See gh-32408
2022-09-20 14:06:18 +01:00
Andy Wilkinson
8323f24ccc
Make classes generated by AOT test processing available to nativeTest
...
Closes gh-32428
2022-09-20 11:29:18 +01:00
Scott Frederick
1ed4d89466
Copy native reachability metadata to jar file in Gradle plugin
...
When the Spring Boot Gradle plugin builds a fat jar and the Native
Build Tools Gradle plugin is applied to the build, any configuration
files from the GraalVM reachability metadata repository that match
project dependencies are copied to a `META-INF/native-image`
directory in the fat jar.
Closes gh-32408
2022-09-16 12:26:24 -05:00
Andy Wilkinson
2b503ee334
Add AOT-generated classes as a dependency
...
Previously, the AOT-generated classes were added directly to the
compile classpath of the AOT compilation task. This didn't work
perfectly in IntelliJ IDEA, leaving the generated classes in the
runtime scope and causing compilation problems where the
AOT-generated source tried to reference those classes.
This commit updates the plugin to add the AOT-generated classes as
a dependency to the AOT source set's implementation configuration.
This makes the classes available during compilation by the source
set's Java compilation task while also makeing IntelliJ IDEA aware
of their presence on the compile classpath.
Closes gh-32395
2022-09-15 14:02:54 +01:00
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
2022-09-14 13:50:27 -07:00
Stephane Nicoll
88f2b33cc1
Add AOT-generated classes to classpath of the compiler
...
See gh-32304
2022-09-13 14:58:16 +02:00
Andy Wilkinson
867c49337a
Add AOT-generated classes to classpath of AOT JavaCompile tasks
...
See gh-32304
2022-09-13 13:03:24 +01:00
Stephane Nicoll
9fe24fe692
Fix windows build
...
This commit makes sure that files that are generated in a temporary
directory are closed once the related test completes.
2022-09-10 16:24:29 +02:00
Andy Wilkinson
aafceb3868
Merge branch '2.7.x'
...
Closes gh-32285
2022-09-09 16:47:06 +01:00
Andy Wilkinson
f17df7bf30
Merge branch '2.6.x' into 2.7.x
...
Closes gh-32284
2022-09-09 16:46:43 +01:00
Andy Wilkinson
23c2f73b3f
Update tests to allow them to run on Java 19
...
Closes gh-32280
2022-09-09 16:46:14 +01:00
Andy Wilkinson
144fdaa703
Merge branch '2.6.x' into 2.7.x
...
Closes gh-32283
2022-09-09 15:14:40 +01:00
Andy Wilkinson
78f4242e46
Build with Gradle 7.5 while still supporting Gradle 6.8+
...
Closes gh-32281
2022-09-09 15:13:43 +01:00
Phillip Webb
46be4a3f30
Merge branch '2.7.x'
2022-09-08 19:38:18 -07:00
Phillip Webb
e88a682220
Merge branch '2.6.x' into 2.7.x
2022-09-08 19:37:52 -07:00
Phillip Webb
85697ac482
Update copyright year of changed files
2022-09-08 19:36:59 -07:00
Stephane Nicoll
5e24b5a110
Stop using RuntimeHintsUtils#registerAnnotation
2022-09-06 15:44:15 +02:00
Andy Wilkinson
3dfe28c9f1
Ensure that a test engine is available to AOT test processing
...
See gh-32192
2022-09-05 09:41:28 +01:00
Andy Wilkinson
cf84ae7ad8
Exclude non-existent test classes dirs from AOT test processing
...
See gh-32192
2022-09-05 09:41:21 +01:00
Scott Frederick
95e62b7ff8
Sort the contents of generated imports files
...
The list of class names generated by annotation processors should be
sorted before being written to `AutoConfiguration.imports` and
`ManagementContextConfiguration.imports` files to make the build more
deterministic.
See gh-31228
2022-09-02 17:26:15 -05:00
Scott Frederick
6b3b0dd3a6
Generate ManagementContextConfiguration.imports file from annotations
...
This commit adds the
`ManagementContextConfigurationImportsAnnotationProcessor` to
the `spring-boot-autoconfigure-processor` annotation processor
module.
Closes gh-32222
2022-09-02 16:27:59 -05:00
Scott Frederick
da4de7d67d
Generate the AutoConfiguration.imports file from annotations
...
This commit adds the `AutoConfigurationImportsAnnotationProcessor` to
the `spring-boot-autoconfigure-processor` annotation processor
module. When added to a project build, the annotation processor will
generate the
`org.springframework.boot.autoconfigure.AutoConfiguration.imports`
file automatically from `@AutoConfiguration`-annotated classes. It
also applies the annotation processor to the Spring Boot build.
Closes gh-31228
2022-09-02 15:10:22 -05:00
Andy Wilkinson
fc979397be
Polish SpringBootAotPlugin
2022-09-02 16:37:15 +01:00
Andy Wilkinson
fd28f6d1d6
Add Gradle plugin support for processing test contexts ahead-of-time
...
Closes gh-32192
2022-09-02 15:54:46 +01:00
Andy Wilkinson
746ed84120
Polish ProcessTestAotMojo
2022-09-02 12:06:54 +01:00
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
2022-08-30 20:41:30 -07:00
Phillip Webb
c0b3d36205
Rename 'generateAotSources' task to processAot'
...
See gh-31918
2022-08-25 15:10:48 -07:00
Phillip Webb
2f6354f633
Rename 'aot-generate' goal to process-aot'
...
See gh-31918
2022-08-25 15:02:28 -07:00
Scott Frederick
c0cbaa1460
Merge branch '2.7.x'
2022-08-24 13:18:22 -05:00
Scott Frederick
257e236b06
Fix image-building unit tests on Windows
...
See gh-32000
2022-08-24 13:14:39 -05:00
Stephane Nicoll
c67010ddd1
Make test more robust
2022-08-23 14:45:52 +02:00
Scott Frederick
2cdaab59f6
Merge branch '2.7.x'
...
Closes gh-32122
2022-08-19 13:57:26 -05:00
Scott Frederick
c16094e04b
Disable SELinux label security policy when building images
...
When using the Gradle `bootBuildImage` task or Maven
`spring-boot:build-image` goal on a Linux distribution with SELinux
enabled, binding the Docker socket in the builder container might
fail. This commit disables the `label` security policy in the builder
container to prevent this type of failure.
Fixes gh-32000
2022-08-19 13:56:34 -05:00
Phillip Webb
07c0a8bced
Fix SecurityManager deprecation issues
...
See gh-32086
2022-08-17 13:22:40 -07:00
Phillip Webb
4ec2e357d9
Merge branch '2.7.x'
...
See gh-32086
2022-08-17 12:49:52 -07:00
Phillip Webb
60e1cc510c
Merge branch '2.6.x' into 2.7.x
...
See gh-32085
2022-08-17 12:48:21 -07:00
Phillip Webb
bd74344025
Revert "Don't close jar files early"
...
This reverts commit b42f056ddbfd5041ef80d2d909dd2f5e51ec3ff0.
2022-08-17 11:38:42 -07:00
Phillip Webb
674022d401
Revert "Don't close nested jars or wrapper when parent is closed"
...
This reverts commit 360eb027befd51012614f5938fb9cdc9f557a577.
2022-08-17 11:37:19 -07:00
Stephane Nicoll
2e3c3efd44
Merge branch '2.7.x'
...
Closes gh-32098
2022-08-17 08:34:52 +02:00
Stephane Nicoll
1c6624db44
Merge branch '2.6.x' into 2.7.x
...
Closes gh-32097
2022-08-17 08:34:38 +02:00
Stephane Nicoll
e94ddfa589
Polish "Explicit error message if source is not an archive"
...
See gh-31997
2022-08-17 08:33:54 +02:00
Nils Hartmann
a0f273a041
Explicit error message if source is not an archive
...
This commit split the existing assertion to provide an explicit error
message if the source file is not an archive.
See gh-31997
2022-08-17 08:30:03 +02:00
Phillip Webb
ee2bd9e065
Merge branch '2.7.x'
...
Closes gh-32086
2022-08-15 17:59:28 -07:00