Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [cross-project-issues-dev] Latest platform I-builds requiring Java 9?

On Thu, Jan 25, 2018 at 10:56 AM, Pierre-Charles David
<pierre-charles.david@xxxxxxx> wrote:
> Hi all,
> We have a canary build in Sirius which consumes nightly builds of all our
> dependencies, including the platform.

First of all, kudos for doing that. I wish every project does so!

> It started failing 2 days ago [1]
> with:
> [ERROR] Cannot resolve target definition:
> [ERROR]   Software being installed: org.eclipse.platform.ide
> 4.8.0.I20180122-2000
> [ERROR]   Missing requirement: org.eclipse.platform.ide 4.8.0.I20180122-2000
> requires 'config.a.jre.javase [9.0.0]' but it could not be found
> Nothing seems to have changed on the platform side (that I can see), but
> after some investigation it seems it could be caused by this commit [2] in
> p2. The date and scope of the change (Bug 530150 - Move JREAction default
> profile to Java 9) seem to match.

You are close :). What you face is caused by (Bug 530093 -
Unable to install: xyz requires ';
(&(' but it could not be found) and the
bug you point to is adjusting for non-tycho users. Now, this was not
enough for tycho as it has its own set of workarounds thus (Bug 530207 -
Update the empty *a.jre* IUs to Java 9). For using this you are
required to use Tycho 1.1.0-SNAPSHOT for now (1.1.0 final shouldn't be
that far away).

> If this is indeed the cause, my
> understanding is that either it should be reverted (perhaps temporarily) or
> the platform build updated to explicitly state it requires Java-SE 1.8, but
> not 1.9.

To give a bit of better explanation. Platform products were stale at
Java 1.6 level when there were many bundles at newer BREE shipped, the
reason why this worked was because there was no validation done on p2
side. As we have fixed the issue in p2 this uncovered these cases
where things were working just because of missing validation. Due to
all that there are no plans to revert this. To give a bit more
technical explanation, the a.jre* IUs in products define the maximum
known BREE to work on as 1.9 provides 1.8 and older. By setting the
a.jre* IUs to Java-9 the door is open to install bundles with Java 9
BREE which would not be the case if this IU is set to 1.8 and bundles
requiring 1.9 BREE will be rejected.

Hope that helps,

> Regards,
> [1]
> [2]
> --
> *Pierre-Charles David*
> +33 2 51 13 52 18
> <>
> 7 Boulevard Ampère - Carquefou - France
> ** <> | *twitter* <>
> | *linkedin* <>
> _______________________________________________
> cross-project-issues-dev mailing list
> cross-project-issues-dev@xxxxxxxxxxx
> To change your delivery options, retrieve your password, or unsubscribe from
> this list, visit

Alexander Kurtakov
Red Hat Eclipse Team

Back to the top