Hi, simple console app with just `product: jvm/app...
# amper
r
Hi, simple console app with just
product: jvm/app
includes springframework boot loader. When I create the simple console app without amper it doesn't include spring bootloader. Is there a way to remove it from Amper console app? By includes I mean it is in the fat jar. I've tried
Copy code
settings:
  springBoot:
    enabled: false
but it just says its the default value
also I've saw/heard somewhere that it is possible to show all possible settings values and their defaults of
module.yaml
but I can't find it. Can you help me with this? 🙏
a
Hi Do you mean you need just standard uber jar? What for? Like I mean, spring-boot-like can replace this uber jar. It basically does the same, however if you have a specific use case when you need standard uber jar, please share, I would be happy to know about it Because uber jars impose additional problems to users, like what to do with resources duplicates the command you probably are looking for is
./amper show settings
r
The usecase is I want to use uber jar for graalvm native-image and if I use the one with spring it doesn't work properly, it shows
Copy code
[3/8] Building universe...                                                                      (0.9s @ 0.46GB)

Warning: Reflection method java.lang.Class.getDeclaredMethod invoked at org.springframework.boot.loader.launch.Launcher.launch(Launcher.java:100)
Warning: Aborting stand-alone image build due to reflection use without configuration.
classic config with agent is not enough
a
Ah, I see As far as I understand there is no specific reason of using uber jar for it besides the fact that it's easy to get the whole runtime classpath from it However, in Amper there is no easy way to get the classpath, all jars are spreaded across the modules and you also need dependencies For now, I can't come up with some kind of workaround except of checking out unofficial old extensibility we used in our repo to build Amper with Amper Also, what I think is better then, you can stay tuned, we are working on new extensibility prototype with cleaner and easier to grasp official (but yet experimental, but still) API Or wait for official GraalVM native image build support Btw, if you can share, what you need native image for? Is it for distribution or anything else?
1
gratitude thank you 1
j
Correct me if I'm wrong, but I don't think you need a fat jar at all to build a native image. You should be able to pass the full class path instead
1
👀 1
This would avoid problems with conflicting resources, signed jars, etc. which are classic issues of regular fat jars (and the reason why Amper doesn't produce those)
💯 1
gratitude thank you 1