Browse Source

Merge branch '3.3.x'

Closes gh-41322
pull/41323/head
Moritz Halbritter 2 years ago
parent
commit
e3d878cca0
  1. 14
      spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/packaging/efficient.adoc

14
spring-boot-project/spring-boot-docs/src/docs/antora/modules/reference/pages/packaging/efficient.adoc

@ -4,7 +4,7 @@ @@ -4,7 +4,7 @@
[[packaging.efficient.unpacking]]
== Unpacking the Executable JAR
== Unpacking the Executable jar
You can run your application using the executable jar, but loading the classes from nested jars has a small startup cost.
Depending on the size of the jar, running the application from an exploded structure is faster and recommended in production.
@ -12,14 +12,22 @@ Certain PaaS implementations may also choose to extract archives before they run @@ -12,14 +12,22 @@ Certain PaaS implementations may also choose to extract archives before they run
For example, Cloud Foundry operates this way.
Spring Boot supports extracting your application to a directory using different layouts.
The default layout is the most efficient, and is xref:#deployment.efficient.cds[CDS friendly].
The default layout is the most efficient, and is xref:reference:packaging/class-data-sharing.adoc[CDS friendly].
In this layout, the libraries are extracted to a `lib/` folder, and the application JAR
In this layout, the libraries are extracted to a `lib/` folder, and the application jar
contains the application classes and a manifest which references the libraries in the `lib/` folder.
To unpack the executable jar, run this command:
[source,shell]
----
$ java -Djarmode=tools -jar my-app.jar extract
----
And then in production, you can run the extracted jar:
[source,shell]
----
$ java -jar my-app/my-app.jar
----

Loading…
Cancel
Save