For API/server/studio and their Jenkins pieplines I now use Docker containers [1] with preinstalled Java (8/11/12/...) and Maven and other required tools. This makes the build independent of the machine it runs, only Docker is required, but avoids to relay that all tools are installed.
[1] https://github.com/apache/directory-buildtools/tree/master/docker/maven-build On 6/18/19 6:48 PM, Shawn McKinney wrote: > Thanks Brian and Stefan for the advice. I’ll try it out in a sandbox and > report back here how it goes. > > —Shawn > >> On Jun 17, 2019, at 12:09 PM, Stefan Seelmann <m...@stefan-seelmann.de> >> wrote: >> >> Yes, with other Directory projects (LDAP API, server, studio still WIP) >> we do it exactly like that. Additionally in CI we use the lowest (Java >> 8) to build artifacts (installers and JARs uploaded to snapshot repo) >> just to be on the safe side. >> >> Reading JAXB made me shrug, I didn't manage to get it working with >> Java11+OSGi for Studio (ehcache required JAXb), so replace it with Caffeine. >> >> Also, skip Java 9 and 10 which are already EOL. I'd suggest to support 8 >> and 11 which are somehow LTS releases (at least AdoptOpenJDK provides >> support) and the latest (Java 12 currently). >> >> Kind Regards, >> Stefan >> >> On 6/17/19 4:47 PM, Brian Demers wrote: >>> IMHO, setting the source & target to 1.8 (or whatever the lower end of your >>> support range is) and running a CI job with a range of versions is the >>> way to go (1.8, 11, etc) >>> That way this uncovers the issues similar to you have mentioned and retains >>> backward compatibility with any of the dependencies you update. >>> I do something similar at my day job, and IIRC Spring does this too. >>> >>> >>> On Mon, Jun 17, 2019 at 10:37 AM Shawn McKinney <smckin...@apache.org> >>> wrote: >>> >>>> Hello, >>>> >>>> An assertion about Java9 support… >>>> >>>> Directory projects should support Java9++ but not require it. >>>> >>>> The adding part is pretty easy. Update the pom, change the compiler >>>> plugin, add missing dependencies for JAXB, … >>>> >>>> The not requiring is perhaps the tricky part. >>>> >>>> What is the best way to allow the user to pick which compiler to use >>>> without boxing them into one or the other? >>>> >>>> Open to suggestions, comments, laments, etc... >>>> >>>> Thanks, >>>> —Shawn >>>> >>>> >>>> --------------------------------------------------------------------- >>>> To unsubscribe, e-mail: dev-unsubscr...@directory.apache.org >>>> For additional commands, e-mail: dev-h...@directory.apache.org >>>> >>>> >>> >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: dev-unsubscr...@directory.apache.org >> For additional commands, e-mail: dev-h...@directory.apache.org >> > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscr...@directory.apache.org > For additional commands, e-mail: dev-h...@directory.apache.org > --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@directory.apache.org For additional commands, e-mail: dev-h...@directory.apache.org