eclipse-jdtls / eclipse-jdt-core-incubator

Eclipse Public License 2.0
8 stars 1 forks source link

State of JDT LS tests with javac #609

Open mickaelistria opened 3 months ago

mickaelistria commented 3 months ago

This issue is used to track some comments/progress ideas about making JDT-LS pass with Javac. The reference job is https://ci.eclipse.org/ls/job/jdt-ls-javac/

Most tests unlisted here require fixes about bindings and problems mappings.

~10 tests failing because of Java 23:

CONFIGURE FAILED in 10s

It is an upstream buildship issue.
Buildship supports Gradle 8.9 - https://github.com/eclipse/buildship/blob/master/org.eclipse.buildship.core/src/main/resources/org/eclipse/buildship/core/internal/gradle/buildship-runtime.properties
Java 23 requires Gradle 8.10 - https://docs.gradle.org/current/userguide/compatibility.html
You can try the following patch:

diff --git a/org.eclipse.jdt.ls.core/src/org/eclipse/jdt/ls/core/internal/managers/GradleProjectImporter.java b/org.eclipse.jdt.ls.core/src/org/eclipse/jdt/ls/core/internal/managers/GradleProjectImporter.java index b8466681..0be495b4 100644 --- a/org.eclipse.jdt.ls.core/src/org/eclipse/jdt/ls/core/internal/managers/GradleProjectImporter.java +++ b/org.eclipse.jdt.ls.core/src/org/eclipse/jdt/ls/core/internal/managers/GradleProjectImporter.java @@ -102,7 +102,8 @@ public class GradleProjectImporter extends AbstractProjectImporter { public static final String SETTINGS_GRADLE_KTS_DESCRIPTOR = "settings.gradle.kts"; public static final String GRADLE_WRAPPER_PROPERTIES_DESCRIPTOR = "gradle/wrapper/gradle-wrapper.properties";

~60 tests are about "missing features" of Javac over ECJ

Some tests don't seem to highlight a particular issue but instead should be modified to better accept Javac:

Closed cases:

snjeza commented 2 months ago

All the 32 Gradle tests that probably cannot work yet with Java 23

@mickaelistria @rgrunber Could you try https://github.com/eclipse-jdtls/eclipse.jdt.ls/pull/3238 ?