why you don't use containers for that? On Sat, Jun 22, 2024, 14:04 Peter Nabbefeld <peter.nabbefeld@gmx.de> wrote:
Am 22.06.24 um 17:22 schrieb Peter Nabbefeld:
Am 22.06.24 um 17:13 schrieb Peter Nabbefeld:
Am 28.04.24 um 14:51 schrieb Doug Newgard:
On Sun, 28 Apr 2024 12:44:03 +0200 Peter Nabbefeld <peter.nabbefeld@gmx.de> wrote:
On 23.04.24 18:28, Doug Newgard wrote:
On Tue, 23 Apr 2024 08:49:21 +0200 Peter Nabbefeld <peter.nabbefeld@gmx.de> wrote:
> Hello, > > as a Java developer, I sometimes need to do compatibility checking > using > older versions, often using JRE, while I need a JDK for development. > > When I tried to update arch linux now, I found I cannot start any > update > because the update is blocked by setting JRE and JDK as conflicting > packages. I tried to only install JDK 21, but the update is still > being > blocked because of my older versions of the JRE. > > Why do You block any software installation? I don't like the idea to > enforce me to use any specific software, or to remove any specific > one. > Is there any possibility to remove the lock-in? > > Kind regards, > Peter > There is no blocking or lock-in. First off, see
https://archlinux.org/news/incoming-changes-in-jdk-jre-21-packages-may-requi...
which now applies to some of the older versions as well.
Yes, I've read this already before. It clearly states what I've written about: If I have a JRE installed, I cannot install a JDK any more. That's my problem: I do need different JDKs and JREs for testing purposes.
Second, exact errors, always. "jdk-openjdk and jre-openjdk are in conflict"
Kind regards, Peter You didn't read very carefully then. "The JDK variant package includes the runtime environment to execute Java applications" Probaly this is just not only readable in one direction? I've understood this as "The JRE is not needed as the JDK contains one (internally)". Probably I was wrong.
However, I've installed these packages on my system:
$ pacman -Ss openjdk | grep -i instal extra/jdk-openjdk 22.0.1.u0-1 [Installiert: 20.0.1.u9-3] extra/jdk11-openjdk 11.0.23.u9-1 [Installiert: 11.0.18.u10-2] extra/jdk17-openjdk 17.0.11.u9-1 [Installiert: 17.0.6.u10-2] extra/jdk21-openjdk 21.0.3.u9-1 [Installiert] extra/jdk8-openjdk 8.412.u08-1 [Installiert: 8.372.u07-1] extra/jre-openjdk 22.0.1.u0-1 [Installiert: 20.0.1.u9-3] extra/jre-openjdk-headless 22.0.1.u0-1 [Installiert: 20.0.1.u9-3] extra/jre11-openjdk 11.0.23.u9-1 [Installiert: 11.0.18.u10-2] extra/jre11-openjdk-headless 11.0.23.u9-1 [Installiert: 11.0.18.u10-2] extra/jre17-openjdk 17.0.11.u9-1 [Installiert: 17.0.6.u10-2] extra/jre17-openjdk-headless 17.0.11.u9-1 [Installiert: 17.0.6.u10-2] extra/jre8-openjdk 8.412.u08-1 [Installiert: 8.372.u07-1] extra/jre8-openjdk-headless 8.412.u08-1 [Installiert: 8.372.u07-1] extra/openjdk-doc 22.0.1.u0-1 [Installiert: 20.0.1.u9-3] extra/openjdk-src 22.0.1.u0-1 [Installiert: 20.0.1.u9-3] extra/openjdk11-src 11.0.23.u9-1 [Installiert: 11.0.18.u10-2] extra/openjdk17-src 17.0.11.u9-1 [Installiert: 17.0.6.u10-2] extra/openjdk8-src 8.412.u08-1 [Installiert: 8.372.u07-1]
So, currently, no Java 21 or above. From what I've understood, these packages shouldn't conflict with Java 21 and above, but it seems I have to remove the older packages to get the newer ones ...
Kind regards, Peter
Sorry for the German wording - of course, "Installiert" means "installed" in English. One additional point I found: I can update single packages using "pacman -S <package name>", but I cannot update the whole system using "pacman -Syu", so system upgrade seems to be broken.
Regards, P. Even trying to ignore the JDK-Updates does not work, using the following entries in /etc/pacman.conf:
IgnorePkg = jdk9-openjdk jre9-openjdk jre9-openjdk-headless openjdk9-doc openjdk9-src IgnorePkg = jdk10-openjdk jre10-openjdk jre10-openjdk-headless openjdk10-doc openjdk10-src IgnorePkg = jdk11-openjdk jre11-openjdk jre11-openjdk-headless openjdk11-doc openjdk11-src IgnorePkg = jdk17-openjdk jre17-openjdk jre17-openjdk-headless openjdk17-doc openjdk17-src IgnorePkg = jdk20-openjdk jre20-openjdk jre20-openjdk-headless openjdk20-doc openjdk20-src IgnorePkg = jdk21-openjdk jre21-openjdk jre21-openjdk-headless openjdk21-doc openjdk21-src IgnorePkg = jdk22-openjdk jre22-openjdk jre22-openjdk-headless openjdk22-doc openjdk22-src
Anything else I can do?
- P.