Thanks, Federico, I appreciate it. I added your question to a new FAQ: http://diet4j.org/faq/ <http://diet4j.org/faq/>
Happy to answer any other questions. Bug reports, patches, etc. all appreciated. > On Jun 2, 2015, at 15:33, Federico Bertola <[email protected]> > wrote: > > I see, well it seems very interesting, I'll make sure to keep an eye on both > (diet4j and UBOS). > > Again thanks for the efforts :) > > Federico. > > On 06/02/2015 11:53 PM, Johannes Ernst wrote: >> diet4j is for production servers. It has no maven dependencies itself. It >> can run command-line applications as well. It could be fairly easily >> extended to cover other kinds of module systems as well — including >> simultaneously. >> >> My goal is really to provide a few foundational building blocks so that Java >> modules aren’t forever 2nd (third, fourth?) class citizens on Linux distros. >> Few distros ship any Java modules, but lots of them ship perl modules and >> python and node and what have you. It’s my belief that diet4j could change >> that. >> >> P.S. I needed it for my own distro, UBOS: http://ubos.net/ >> <http://ubos.net/> but it is independent of that. >> >> >> >>> On Jun 2, 2015, at 14:19, Federico Bertola <[email protected]> >>> wrote: >>> >>> >>> Great, thanks for the effort! >>> >>> One question though: whats the difference between the exec:java or >>> <tomcat|jetty>:run MOJOs and diet4j? >>> >>> Federico. >>> >>> On 06/02/2015 08:28 PM, Johannes Ernst wrote: >>>> Maven is great for breaking gigantic code bases into many little modules, >>>> with identified dependencies. This allows incremental builds etc. >>>> >>>> And then, to run that code, we usually put all together again into a >>>> uber-mega-JAR or WAR, or with mile-long class paths. While sometimes this >>>> makes sense, often it does not. >>>> >>>> diet4j can run command-line apps, and Tomcat web apps, similarly to how >>>> maven builds projects: simply specify the name of the top project, and >>>> diet4j assembles all the other JARs automatically for the run. >>>> >>>> E.g. if your project hierarchy looks like this: >>>> Project A >>>> Project B >>>> Project C >>>> Project D >>>> >>>> you can say: >>>> >>>>> diet4j A >>>> which will read the POM in A.jar (in ~/.m2/repository, or a location of >>>> your choosing), determine run-time dependencies, then recursively look for >>>> B.jar, C.jar and D.jar, load them into separate ClassLoaders, hook up >>>> dependencies and jump on the main program (if it has one) of Project A. >>>> >>>> No jar-with-dependencies and stuff like that required. Usually no changes >>>> are required to maven projects or program structure. >>>> >>>> As I said, it may not be for all people, but it is for some who want to >>>> distribute changes incrementally, avoid rebuilding gigantic JARs every >>>> time some small change needs to happen, fit better into Linux-style >>>> package management etc. It’s also great for dynamically finding and >>>> loading modules without restarting the application. >>>> >>>> I’d love some feedback, it’s early days. >>>> >>>> http://diet4j.org/ <http://diet4j.org/> <http://diet4j.org/ >>>> <http://diet4j.org/>> >>>> >>>> Thank you, >>>> >>>> >>>> Johannes Ernst >>>> >>>> >>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: [email protected] >>> <mailto:[email protected]> >>> For additional commands, e-mail: [email protected] >>> <mailto:[email protected]> > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] >
