Skip to content

Support for Eclipse 2022-06 #190

@jmini

Description

@jmini

Some notes about supporting Eclipse release 2022-06

Addition of the new update site

Currently if you try to use 2022-06 (a.k.a 4.24.0) you get the expected error:

* What went wrong:
A problem occurred evaluating root project 'jdt-gradle-example'.
> 4.24.0 is not supported.  We only support 3.5.0 through 4.23.0

We need the same work as in: #183

The URL of the update site is:

https://download.eclipse.org/eclipse/updates/4.24/R-4.24-202206070700/

Mapping rule for "org.osgi.service.prefs"

Introduced with eclipse-platform/eclipse.platform.releng#48 there is a new mapping:

<mavenMappings namePattern="(org.osgi)(.*)" groupId="$1" artifactId="$1$2"/>

See line 70 of SDK4Mvn.aggr

Similar to the work done in #157, we need to make sure that org.osgi.service.prefs is mapped to the correct coordinates in Maven Central:

org.osgi:org.osgi.service.prefs

Buggy org.eclipse.equinox.preferences pom

See eclipse-equinox/equinox.bundles#54 for more details.

The pom for org.eclipse.platform:org.eclipse.equinox.preferences:3.10.0 (see org.eclipse.equinox.preferences-3.10.0.pom on maven central) is broken.

It lists a dependency that does not exists (wrong groupId):

<dependency>
    <groupId>org.osgi.service</groupId>
    <artifactId>org.osgi.service.prefs</artifactId>
    <version>[1.1.0,1.2.0)</version>
</dependency>

The "solution" was to publish a new version 3.10.1 where the dependency is fixed (see org.eclipse.equinox.preferences-3.10.1.pom on maven central):

<dependency>
    <groupId>org.osgi</groupId>
    <artifactId>org.osgi.service.prefs</artifactId>
    <version>[1.1.0,1.2.0)</version>
</dependency>

I am not sure about the impact for something like:

apply plugin: 'com.diffplug.eclipse.mavencentral'

eclipseMavenCentral {
    release '4.24.0', {
        implementation 'org.eclipse.equinox.preferences'
    }
}

The P2 Update site will tell to map to:
org.eclipse.platform:org.eclipse.equinox.preferences:3.10.0

But since this is broken, should is map to:
org.eclipse.platform:org.eclipse.equinox.preferences:3.10.1

This would means hard-coding this information somewhere…

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions