75 Commits

Author SHA1 Message Date
Scott Frederick
0724014645 Merge branch '3.1.x' into 3.2.x
Closes gh-40412
2024-04-17 16:40:21 -05:00
Scott Frederick
bc5777d0cc Upgrade CI images to ubuntu:jammy-20240405
Closes gh-40410
2024-04-17 16:40:09 -05:00
Scott Frederick
f324994065 Merge branch '3.1.x' into 3.2.x
Closes gh-39846
2024-03-13 15:20:55 -05:00
Scott Frederick
c83f7017c8 Upgrade CI images to ubuntu:jammy-20240227
Closes gh-39844
2024-03-13 15:20:41 -05:00
Andy Wilkinson
0f6b3514db Update LoaderIntegrationTests to cover Java 22
See gh-39746
2024-03-04 11:21:19 +00:00
Scott Frederick
428ddb710b Merge branch '3.1.x' into 3.2.x
Closes gh-39658
2024-02-21 17:59:03 -06:00
Scott Frederick
39304147a7 Upgrade CI images to ubuntu:jammy-20240212
Closes gh-39657
2024-02-21 17:58:39 -06:00
Scott Frederick
7b34a44f4d Merge branch '3.1.x' into 3.2.x
Closes gh-39433
2024-02-07 15:43:46 -06:00
Scott Frederick
d616568324 Upgrade CI images to ubuntu:jammy-20240125
Closes gh-39426
2024-02-07 15:43:35 -06:00
Scott Frederick
c0a820bc57 Merge branch '3.1.x' into 3.2.x 2024-01-17 17:18:14 -06:00
Scott Frederick
35b45450f8 Upgrade test images to ubuntu:jammy-20240111
See gh-39217
2024-01-17 17:18:01 -06:00
Phillip Webb
3222458007 Merge branch '3.1.x'
Closes gh-38893
2023-12-20 18:22:15 -08:00
Phillip Webb
66e9c777af Upgrade Ubuntu version in CI images
Closes gh-38894
2023-12-20 18:20:09 -08:00
Phillip Webb
062b544447 Upgrade to Ubuntu Jammy 20231004
Closes gh-37957
2023-10-18 21:19:51 -07:00
Phillip Webb
55968ef995 Upgrade to Ubuntu Jammy 20231004
Closes gh-37949
2023-10-18 21:17:24 -07:00
Phillip Webb
3c62defb9d Support java.nio.file Paths and FileSystems with nested jars
Add a `NestedFileSystemProvider` implementation so that the JDK's
`ZipFileSystem` can load content from nested jars and nested
directory entries.

Creating a `ZipFileSystem` may be a relatively expensive operation as
zip structures need to be parsed and in the case of directory entries
a virtual datablock nees to be generated on the fly. As such, we
install the `ZipFileSystem` as late as possible since in a typical
application it may never be needed.

This commit also tweaks Gradle and Maven plugins to ensure that the
service loader file is written to repackaged jars.

Closes gh-7161
2023-10-18 20:46:36 -07:00
Phillip Webb
33c5e1269a Write signature files to uber jars to for Oracle Java 17 verification
Update Gradle and Maven plugins to write an empty `META-INF/BOOT.SF`
file whenever there is a nested signed jar.

This update allows Oracle Java 17 to correctly verify the nested JARs.
The file is required because `JarVerifier` has code roughly equivalent
to:

	if (!jarManifestNameChecked && SharedSecrets
			.getJavaUtilZipFileAccess().getManifestName(jf, true) == null) {
    	throw new JarException("The JCE Provider " + jarURL.toString() +
    		" is not signed.");
	}

The `SharedSecrets.getJavaUtilZipFileAccess().getManifestName(jf, true)`
call ends up in `ZipFile.getManifestName(onlyIfSignatureRelatedFiles)`
which is a private method that we cannot override in our `NestedJarFile`
subclass. By writing an empty `.SF` file we ensure that the `Manifest`
is always returned because there are always "signature related files".

Fixes gh-28837
2023-10-16 16:19:16 -07:00
Phillip Webb
6c24ea01f1 Add BouncyCastle nested jar verification test including on Oracle JDK
Update `spring-boot-loader-tests` with a test that checks verified
BouncyCastle jars can be loaded. Currently the Oracle JDK only supports
verification if the jar is unpacked.

See gh-28837
2023-10-05 22:13:31 -07:00
Phillip Webb
b0b3adb1b7 Merge branch '3.1.x'
Closes gh-37741
2023-10-05 21:30:43 -07:00
Phillip Webb
30af19acc2 Merge branch '2.7.x' into 3.0.x
Closes gh-37739
2023-10-05 20:54:09 -07:00
Phillip Webb
a33ce9d405 Cache JDK downloads for tests that use ImageFromDockerfile
Update `spring-boot-launch-script-tests` and `spring-boot-loader-tests`
so that JDK archives are now downloaded by Gradle and cached across
builds.

Closes gh-37450
2023-10-05 20:49:02 -07:00
Phillip Webb
a89057b7c7 Reintroduce spring-boot-loader modules
Restore the `spring-boot-loader` with the previous loader code so
that we can develop it further.

See gh-37669
2023-10-03 15:40:25 -07:00
Phillip Webb
aeb6537f57 Rename spring-boot-loader to spring-boot-loader-classic
Rename the `spring-boot-loader` module to `spring-boot-loader-classic`
so that we can introduce an alternative loader implementation.

See gh-37669
2023-10-03 15:40:04 -07:00
Phillip Webb
3d6859e80f Use the term "uber jar" in reference documentation and javadoc
Update reference documentation and javadoc to use the term "uber jar"
rather than "fat jar".

Closes gh-37653
2023-10-02 23:01:34 -07:00
Phillip Webb
e3036dcb99 Merge branch '3.1.x'
Closes gh-37658
2023-10-02 23:00:15 -07:00
Phillip Webb
7bb60fc7c7 Merge branch '2.7.x' into 3.0.x
Closes gh-37656
2023-10-02 22:59:45 -07:00
Phillip Webb
ed4ab667a1 Enable LoaderIntegrationTests on aarch64
Closes gh-37654
2023-10-02 22:42:21 -07:00
Moritz Halbritter
a7373c182a Merge branch '3.1.x'
Closes gh-37523
2023-09-22 08:42:18 +02:00
Moritz Halbritter
58941d85f2 Merge branch '2.7.x' into 3.0.x
Closes gh-37521
2023-09-22 08:41:58 +02:00
Moritz Halbritter
f96690348f Use Bellsoft JDK 21 in LoaderIntegrationTests
Closes gh-35900
2023-09-22 08:35:22 +02:00
Andy Wilkinson
3eb89343d0 Merge branch '2.7.x' into 3.0.x 2023-09-13 13:37:31 +01:00
Andy Wilkinson
c4368bc934 Run LoaderIntegrationTests on Java 21
See gh-37359
2023-09-13 13:36:04 +01:00
Scott Frederick
c600be74ff Merge branch '3.1.x'
Closes gh-36542
2023-07-24 16:06:13 -05:00
Scott Frederick
c5d2415834 Merge branch '2.7.x' into 3.0.x
Closes gh-36540
2023-07-24 16:04:28 -05:00
Scott Frederick
90be62bc7a Update Docker images used for launch script tests
Closes gh-24349
2023-07-24 15:46:30 -05:00
Moritz Halbritter
23979e6ccf Enable LoaderIntegrationTests on Java 21 2023-06-15 10:13:19 +02:00
Moritz Halbritter
372af21313 Merge branch '2.7.x' into 3.0.x 2023-06-07 10:17:14 +02:00
Moritz Halbritter
140e806357 Enable LoaderIntegrationTests on Java 20
See gh-35758
2023-06-07 10:16:54 +02:00
Moritz Halbritter
c2dd20f4ea Merge branch '2.7.x' into 3.0.x 2023-05-03 13:07:00 +02:00
Moritz Halbritter
f5eb76074b Disable loader integration tests on aarch64 linux and mac
See gh-35229
2023-05-03 11:32:39 +02:00
Phillip Webb
c4de86c244 Merge branch '2.7.x' into 3.0.x 2023-02-21 23:17:57 -08:00
Phillip Webb
df5898a146 Reformat code following spring-javaformat upgrade 2023-02-21 22:53:27 -08:00
Stephane Nicoll
72fc1f0018 Merge branch '2.7.x'
Closes gh-32512
2022-09-27 08:30:44 +02:00
Johnny Lim
975affc497 Enable LoaderIntegrationTests with Java 19
See gh-32501
2022-09-27 08:30:13 +02:00
Andy Wilkinson
a896fd0a36 Merge branch '2.7.x' 2022-09-10 09:38:18 +01:00
Andy Wilkinson
9fe9f31af1 Polish 2022-09-10 09:38:03 +01:00
Andy Wilkinson
144abee80a Merge branch '2.7.x' 2022-09-10 09:35:08 +01:00
Andy Wilkinson
a262520f08 Disable LoaderIntegrationTests on Java 19 till it GAs
See gh-32280
2022-09-10 09:34:51 +01:00
Stephane Nicoll
aa6e52f029 Merge branch '2.7.x' 2022-09-10 10:32:20 +02:00
Stephane Nicoll
c3416ac97a Disable LoaderIntegrationTests with Java 19
See gh-32295
2022-09-10 10:31:48 +02:00