mvysny / shepherd

Build & run apps automatically
1 stars 0 forks source link

Add support for Vaadin jar plugins #16

Closed mvysny closed 1 year ago

mvysny commented 1 year ago

Document how to run projects like https://github.com/parttio/breeze-theme from Docker. This kind of setup is quite typical for Vaadin Addons, even though it is a bit of an anti-pattern:

In the worst case I can create a Dockerfile which runs mvn jetty:run, but that image is going to be large because of the inclusion of .m2/repository.

I wonder whether I could tell Maven to build a jar with dependencies, include test classes, and run it with Jetty Runner? Maybe this would help, even though this only works for WAR projects: https://github.com/heroku/devcenter-jetty-runner

Alternatively, how about adding vaadin-boot as a test dependency, then building jar-with-dependencies of the test scope, then running the thing via java -cp *.jar Main?

mvysny commented 1 year ago

Jetty-runner documentation here: https://webtide.com/jetty-runner/ . We could use the --lib which seems to mass-include all jars onto classpath, which would definitely help a lot. However we might still need to provide some dummy .war file, to make jetty-runner happy...

mvysny commented 1 year ago

Vaadin-Boot solution is prototyped at https://github.com/mvysny/breeze-theme ; related issue: https://github.com/mvysny/vaadin-boot/issues/15

mvysny commented 1 year ago

Fixed: the prototype project breeze-theme builds and runs in production mode at https://v-herd.eu/parttio-breeze-theme . Added a documentation to README.md.