← Back to team overview

openjdk team mailing list archive

[Bug 1584118] Re: 16.04 incorrectly installs openjdk-9 to satisfy java8-runtime dependency

 

Thanks Jonas for your comments.

> I can confirm that this works. However, this introduces another issue
> in case the user has installed for example an Oracle JRE, or even an
> IBM JRE. In that case, openjdk-8 would unnecessarily be pulled in.

When using only "Depends:" it must contain each supported JRE in order
to avoid this scenario.

> It is perfectly reasonable for openjdk-9-jre to provide a
> java8-runtime, anything else would be incorrect. However, it is very
> surprising that it is the "preferred" install simply due to a "higher
> version".

That was the situation before dpkg 1.17.11, when virtual packages
couldn't be versioned.

> It is surprising because openjdk-9 is still in a pre-release version
> and is scheduled for release next year [1]. Only when released would
> it be the expected behavior.

Indeed, unfortunately for Xenial the openjdk-9 package already reached
the release pocket and any update to it will land in the -updates
pocket, thus we are unable to remove the java8-runtime from openjdk-9
"Provides: " - if we ever did that, then the version in the release
pocket (9~b114-0ubuntu1) would take over.

> Can you recommend a workaround which does not require Conflicts but
> still remains compatible with multiple JREs (openjdk, oracle, ibm,
> etc)?

The only workaround right now is to list each compatible package in
"Depends:".

The right way to go would be to depend on a versioned the virtual
package (as soon as that support comes to openjdk-8 and openjdk-9).

** Changed in: openjdk-9 (Ubuntu)
       Status: Incomplete => Confirmed

-- 
You received this bug notification because you are a member of OpenJDK,
which is subscribed to openjdk-9 in Ubuntu.
https://bugs.launchpad.net/bugs/1584118

Title:
  16.04 incorrectly installs openjdk-9 to satisfy java8-runtime
  dependency

Status in openjdk-9 package in Ubuntu:
  Confirmed

Bug description:
  Hi,
  A user recently reported an issue on our bug tracker stating that our package was pulling in openjdk-9 and subsequently crashed when started. This apparently because openjdk-9 is the default choice for java8-runtime, which is quite surprising.

  Now it is technically correct that java9 does provide a java8-runtime,
  but java9 isn't even released yet and should definitely not be the
  default java8-runtime until that time.

  Same bug was reported against puppet here:
  https://tickets.puppetlabs.com/browse/EZ-77

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/openjdk-9/+bug/1584118/+subscriptions


References