[arch-general] How to have multiple JDKs parallel?
Hello, up to JDK 9 I didn't have problems upgrading, but since JDK 10 it always wants to replace JDK 9, and I guess it will become worse with JDK 11 etc. I've set "IgnorePkg = jdk9-openjdk jre9-openjdk jre9-openjdk-headless openjdk9-doc openjdk9-src" in pacman.conf, so now I'm getting warnings all the time, but I'm not sure what will happen with future updates. As a Java developer, I need to be able to have multiple JDKs for compatibility checkings. Kind regards Peter
Op 15 sep. 2018 10:56 schreef "Peter Nabbefeld" <peter.nabbefeld@gmx.de>: Hello, up to JDK 9 I didn't have problems upgrading, but since JDK 10 it always wants to replace JDK 9, and I guess it will become worse with JDK 11 etc. [...] "IgnorePkg = jdk9-openjdk [...] As a Java developer, I need to be able to have multiple JDKs for compatibility checkings. I honestly don't know much about java, but I guess you don't have real dependancies on the lower versions (As in: no other packages require them)? Then perhaps it's an option to edit the PKGBUILD of these lower versions and modify the name. Something like jdk9-custom etc. Then the higher versions won't conflict. Mvg, Guus Snijders
I have a related question. I tried arch's openjdk packages and those were successful in displaying Swing UIs. Then, to check out newer JDKs and IBM's OpenJ9, I grabbed a build from https://adoptopenjdk.net, and I just couldn't get any Swing UI to display. It reported many exceptions and that was it. Tried with different window managers and compositors. Any idea what's different on Arch or where the adoptopenjdk builds work?
On 15.09.18 10:56, Peter Nabbefeld wrote:
up to JDK 9 I didn't have problems upgrading, but since JDK 10 it always wants to replace JDK 9, and I guess it will become worse with JDK 11 etc.
starting with Java 9, the OpenJDK changed its release cycle to publish a new version every six month. Each new version is replacing the previous one so that there is always only one (the latest) supported version. Check out e. g. this article for more details: https://medium.com/codefx-weekly/no-free-java-lts-version-b850192745fb Since Arch Linux closely follows upstream I think the OpenJDK packages will follow this policy—and that this is the reason why the package “jdk10-openjdk” replaced “jdk9-openjdk” entirely. In ten days, “jdk11-openjdk” will replace “jdk10-openjdk” and so on …
As a Java developer, I need to be able to have multiple JDKs for compatibility checkings.
Since there will be no official OpenJDK builds (no maintenance) for the older versions anymore, you have to install them manually—or use Oracle’s builds with longtime support (not for free though). I guess it would be best to closely follow the latest version and always make sure your applications are running fine. I heard that new versions should be backwards compatible (to a certain degree) but cannot find any source for this. Regards, Olli
On 15/09/2018 14:22, Olli wrote:
Each new version is replacing the previous one so that there is always only one (the latest) supported version.
I think there are technically two supported releases, a long-term- and short-term-supported release. The current LTS is OpenJDK 8, the next LTS will be (IIRC) OpenJDK 11, with intervening versions being STS. J
On 15.09.18 18:15, Jonathon Fernyhough wrote:
On 15/09/2018 14:22, Olli wrote:
Each new version is replacing the previous one so that there is always only one (the latest) supported version.
I think there are technically two supported releases, a long-term- and short-term-supported release. The current LTS is OpenJDK 8, the next LTS will be (IIRC) OpenJDK 11, with intervening versions being STS.
LTS versions are only provided by Oracle for their JDK, not for the OpenJDK. This graphic explains it quite well: https://medium.com/codefx-weekly/no-free-java-lts-version-b850192745fb
Am 15.09.18 um 19:54 schrieb Olli:
LTS versions are only provided by Oracle for their JDK, not for the OpenJDK. This graphic explains it quite well: https://medium.com/codefx-weekly/no-free-java-lts-version-b850192745fb
There won't be any free LTS releases from Oracle, but the AdoptOpenJDK project wants to create public LTS releases every three versions beginning with Java 11. They also want to support Java 8 until 2022
In addition, every three years one feature release will be designated as the Long Term Supported (LTS) release. We will support LTS releases for at least four years. This assurance will allow you to stay on a well-defined code stream, and give you time to migrate to the next, new, stable, LTS release when it becomes available.
participants (6)
-
Carsten Mattner
-
Guus Snijders
-
Jonathon Fernyhough
-
Olli
-
Peter Nabbefeld
-
ProgAndy