7 ms·
Title clarification: OpenJDK specifically, there are many name-branded JDKs in circulation.
by gravitas 6y ago
Title clarification: OpenJDK specifically, there are many name-branded JDKs in circulation.
- Alupis 6y agoMost of which take the OpenJDK source, sprinkle in some "secret sauce" and then compile the entire thing for convenience of users. It's not a trivial undertaking to compile OpenJDK from sources. There are not very many JDK implementations that don't have OpenJDK sources at their core. OpenJDK is also treated as the reference implementation, and is where JEP's and things are worked out. Effectively, OpenJDK is "upstream" Java.
- Hello71 6y ago> It's not a trivial undertaking to compile OpenJDK from sources. uh? assuming you already have a working C toolchain and JDK installed, you just hg^Wgit clone; bash configure; make. edit: you may have more trouble compiling it on windows, but compiling anything on windows is a pain unless it uses the entire proprietary non-portable microsoft-specific project management tools.
- swiley 6y agoRE: compiling on windows Apple is honestly giving Microsoft a run for their money here. Many FOSS apps seem to have given up on OSX and few ever tried with iOS.
- TheDong 6y agoIMO it's harder to compile for macOS than for windows. I don't have a macbook. I can legally run a trial copy of windows in virtualbox to test out cross-compiling stuff, or spin up a windows EC2 instance for a few hours, or even use circleci or other CI system's windows workers to build stuff. For macOS, I can't legally run a VM on my hardware, ec2 doesn't support it so I can't spin up a VM, and most CI platforms don't support it (probably because many of them just resell fleets of ec2 instances). Many FOSS developers are just hacking away on 3 year old laptops or desktops for fun, and can't afford a $2k investment just to support one more operating system for their little project.
- jgneff 6y agoI agree. Among all the open-source projects I've built, the OpenJDK is one of the easiest and most straight-forward I've encountered — even when cross-compiling for 32-bit ARM. They did a great job rewriting the build system a few years back.
- Slartie 6y agoEven on Windows it just takes a few hours of setting up a build VM machine from scratch, installing a few tools, to first full build. It is more inconvenient than Linux (as is all Windows building, indeed) but far from being hard to do. I did that regularly some years ago for the company I work for, because we needed OpenJDK Windows binaries, and there wasn't such a convenient thing as AdoptOpenJDK. So in order to not get caught in stupid licensing debacles with Oracle it came down to just compile the Windows binaries by yourself.
- fnord123 6y ago> Most of which take the OpenJDK source, sprinkle in some "secret sauce" and then compile the entire thing for convenience of users. Got some links to these GPL licensed OpenJDK forks?
- deleted 6y ago[deleted]
- Rebelgecko 6y agohttps://github.com/corretto/corretto-8 https://github.com/corretto/corretto-8 https://www.eclipse.org/openj9/ https://www.eclipse.org/openj9/ https://github.com/SAP/SapMachine https://github.com/SAP/SapMachine
- xeeeeeeeeeeenu 6y agoalso: https://adoptopenjdk.net/ https://adoptopenjdk.net/ https://github.com/alibaba/dragonwell11 https://github.com/alibaba/dragonwell11 https://github.com/alibaba/dragonwell8 https://github.com/alibaba/dragonwell8 https://developers.redhat.com/products/openjdk/overview https://developers.redhat.com/products/openjdk/overview https://www.azul.com/downloads/zulu-community/ https://www.azul.com/downloads/zulu-community/ https://bell-sw.com https://bell-sw.com
- fnord123 6y agoGreat list! Thanks!
- vips7L 6y agoSap and corretto are mostly friendly forks that just backport bug fixes from newer versions of OpenJDK for their customers. OpenJ9 uses a whole different JVM even though they use the OpenJDK standard library.
- fnord123 6y agoAwesome! Thanks!
- deleted 6y ago
- kodablah 6y ago> There are not very many JDK implementations that don't have OpenJDK sources at their core. Well yeah, especially not open source, as you can't get a TCK for non-OpenJDK open source implementations of the standard library. Oracle forbids it.
- mhh__ 6y ago> Most of which take the OpenJDK source, sprinkle in some "secret sauce" and then compile the entire thing for convenience of users. As in GPL violations? (I've never had the pleasure(?) to use java properly, so I'm not familiar)
- Rebelgecko 6y agoDunno what previous poster is referring to, but none that I know of. For example Amazon Corretto is on GitHub, and Amazon gives a pretty good breakdown of the patches that make it different from the equivalent OpenJDK version (funnily enough, most of the changes are actually just backporting bug fixes from OpenJDK11 into Amazon's equivalent of OpenJDK8) There's the Oracle JDK which has some onerous licensing, but IIRC the actual JDK is the same, they just include some extra binaries in the distribution
- singlow 6y agoNot literally secret. They are just the changes that are particular to an environment or specific use case. They are just not things that are likely to get upstreamed so they are maintained as a fork.
- gravitas 6y agoFun trivia: it all started with the Blackdown JDK. I vaguely recall it taking up until 1.2 to stabilize but that's a fuzzy memory from a younger me. https://en.m.wikipedia.org/wiki/Blackdown_Java https://en.m.wikipedia.org/wiki/Blackdown_Java