Giter Club home page Giter Club logo

Comments (3)

wilkinsona avatar wilkinsona commented on August 12, 2024

For 2., how do you propose to distinguish between the bootJar task that's created automatically when you apply the Boot plugin and a bootJar task that's been explicitly configured by the user? Do you mean a BootJar task that's named something other than bootJar?

3 seems like a rather weird setup. Why is the Boot plugin being applied at all? If you're using the Shadow plugin I'd expect the Shadow plugin to be applied and, ideally, for Boot's dependency management to be used. I wouldn't expect Boot's own plugin to be applied though.

from spring-boot-thin-launcher.

dsyer avatar dsyer commented on August 12, 2024

The shadow sample is in slightly better shape now. It actually builds 2 jars the right size and shape, but
only one of them is executable.

how do you propose to distinguish

I don't know. Do we need to distinguish? If the user configures a task called bootJar and isn't using the Boot plugin then that's a bit unexpected. Is that what you mean?

I think BootJar tasks called something other than bootJar was actually a feature we discussed once before, and isn't it actually supported in Boot 1.5 with the thin plugin, but with different names for everything?

seems like a rather weird setup.

It isn't weird for the AWS sample mentioned above, for example. You have a Boot thin jar that can be used in a variety of scenarios (even as a library), and a shaded ueber jar that can be launched by AWS.

from spring-boot-thin-launcher.

wilkinsona avatar wilkinsona commented on August 12, 2024

I don't know. Do we need to distinguish?

Scenarios 1 and 2 suggested to me that distinguishing is necessary. One results in the thick jar being omitted while the other is both a thick jar and a thin jar. I was curious about the trigger for the different behaviours.

You have a Boot thin jar that can be used in a variety of scenarios (even as a library), and a shaded ueber jar that can be launched by AWS.

It's not that bit that I find a bit weird. It's using both Boot's plugin and the Shadow plugin to get there. I guess it's a side-effect of trying to support Boot 1.x and Boot 2.x with (largely) the same code, but it would be more Gradle-like if the thin plugin provided a custom jar task that built a thin jar without any reliance on Boot's normal Gradle plugin, particularly given that Boot's Gradle plugin doesn't support the custom layout stuff in 2.0 so it can't be adding much anyway.

from spring-boot-thin-launcher.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.