Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for the Spring Boot thin jar layout #125

Open
plaird opened this issue May 27, 2021 · 1 comment
Open

Support for the Spring Boot thin jar layout #125

plaird opened this issue May 27, 2021 · 1 comment

Comments

@plaird
Copy link
Contributor

plaird commented May 27, 2021

Spring Boot has an experimental thin layout.A thin Spring Boot jar does not contain the dependencies internally like in the fat jar. The thin loader reads a descriptor (pom.xml or thin.properties) that then triggers the loader to download those dependencies at first launch of the service.

Spring Boot Thin Jar

I am not wild about it because it runs contrary to the idea of the Bazel principle of producing a hermetic output. I see the value though - if you distribute your app widely, it reduces the size of the binary that you push to your users. If those users already have your deps in their .m2/repository, they won't have to incur the cost of downloading the fat jar with all of them.

@plaird
Copy link
Contributor Author

plaird commented Dec 23, 2024

A recent article about this is here:
https://www.baeldung.com/spring-boot-thin-jar

But it is still marked experimental and appears to have stopped with Boot2.
https://repo1.maven.org/maven2/org/springframework/boot/experimental/spring-boot-thin-layout/1.0.31.RELEASE/spring-boot-thin-layout-1.0.31.RELEASE.pom

I will leave open, but I don't plan to work on this since it seems dead.

@plaird plaird added the wontfix label Dec 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant