On 28/03/2025 13:42, Rémy Maucherat wrote:
On Fri, Mar 28, 2025 at 2:09 PM Rémy Maucherat <r...@apache.org> wrote:

On Fri, Mar 28, 2025 at 12:48 PM <ma...@apache.org> wrote:

This is an automated email from the ASF dual-hosted git repository.

markt pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/main by this push:
      new 4c47edde5e Update JDT to 4.35 / 3.41
4c47edde5e is described below

commit 4c47edde5e8e406a4ea1a7999f08c25e651f59d0
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Fri Mar 28 11:46:36 2025 +0000

     Update JDT to 4.35 / 3.41

There is a problem with this update:
     java.lang.NullPointerException: Cannot read the array length
because "value" is null
         at java.base/java.lang.String.<init>(String.java:283)
         at java.base/java.lang.String.valueOf(String.java:4573)
         at 
org.eclipse.jdt.internal.compiler.problem.ProblemReporter.moduleNotFound(ProblemReporter.java:11590)
         at 
org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.module(CompilationUnitDeclaration.java:842)
         at 
org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.buildTypeBindings(LookupEnvironment.java:517)
         at 
org.eclipse.jdt.internal.compiler.Compiler.internalBeginToCompile(Compiler.java:762)
         at 
org.eclipse.jdt.internal.compiler.Compiler.beginToCompile(Compiler.java:277)
         at 
org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:327)
         at 
org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:309)
         at 
org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:495)

I'm looking into it.

It would seem this version simply requires modules as a side effect of
https://github.com/eclipse-jdt/eclipse.jdt.core/commit/7c152fa4c6a07621402513f235c3d5ae6e7894a1

Looks like the unnamed module now needs to be used explicitly. IT also looks like there was a switch from using null to char[0] to refer to the unnamed module at some point.

I've tested the fix all the way back to Tomcat 9 running on Java 8 without issues.

Mark


Rémy


---
  build.properties.default          | 12 ++++++------
  res/maven/tomcat-embed-jasper.pom |  2 +-
  res/maven/tomcat-jasper.pom       |  2 +-
  webapps/docs/changelog.xml        |  3 +++
  4 files changed, 11 insertions(+), 8 deletions(-)

diff --git a/build.properties.default b/build.properties.default
index d514dd84be..efb9438bb2 100644
--- a/build.properties.default
+++ b/build.properties.default
@@ -139,15 +139,15 @@ base-maven.loc=https://repo.maven.apache.org/maven2
  # ----- Eclipse JDT, version 4.7 or later -----#
  # See 
https://cwiki.apache.org/confluence/display/TOMCAT/Managing+Tomcat%27s+Dependency+on+the+Eclipse+JDT+Core+Batch+Compiler
  #
-# Checksum is from "SHA512 Checksums for 4.34" link at
-# https://download.eclipse.org/eclipse/downloads/drops4/R-4.34-202411201800/
-# 
https://download.eclipse.org/eclipse/downloads/drops4/R-4.34-202411201800/checksum/eclipse-4.34-SUMSSHA512
+# Checksum is from "SHA512 Checksums for 4.35" link at
+# https://download.eclipse.org/eclipse/downloads/drops4/R-4.35-202502280140/
+# 
https://download.eclipse.org/eclipse/downloads/drops4/R-4.35-202502280140/checksum/eclipse-4.35-SUMSSHA512
  #
-jdt.version=4.34
-jdt.release=R-4.34-202411201800
+jdt.version=4.35
+jdt.release=R-4.35-202502280140
  jdt.checksum.enabled=true
  jdt.checksum.algorithm=SHA-512
-jdt.checksum.value=096c8063097f4aae0ce678200884c70e92773f748a852a20c92d808425ef8fe8d7bd57a5b4ce868a3ec1c71abeaaf92a92871e62e53041d48fc7e86483ecd8ee
+jdt.checksum.value=f79cadd22cc0b2c9ce8d7cd168280b98835caa24dd6b8c14aab06ce67fe2048c161c6f4b38df686783e64aeb4953cbb0886fea6e3abffad99aa62f1aa80e6d40
  jdt.home=${base.path}/ecj-${jdt.version}
  jdt.jar=${jdt.home}/ecj-${jdt.version}.jar
  # The download will be moved to the archive area eventually. We are taking 
care of that in advance.
diff --git a/res/maven/tomcat-embed-jasper.pom 
b/res/maven/tomcat-embed-jasper.pom
index 68c240a1c4..dcbb0701be 100644
--- a/res/maven/tomcat-embed-jasper.pom
+++ b/res/maven/tomcat-embed-jasper.pom
@@ -48,7 +48,7 @@
      <dependency>
        <groupId>org.eclipse.jdt</groupId>
        <artifactId>ecj</artifactId>
-      <version>3.40.0</version>
+      <version>3.41.0</version>
      </dependency>
    </dependencies>
  </project>
diff --git a/res/maven/tomcat-jasper.pom b/res/maven/tomcat-jasper.pom
index 3276284168..43176d669c 100644
--- a/res/maven/tomcat-jasper.pom
+++ b/res/maven/tomcat-jasper.pom
@@ -60,7 +60,7 @@
      <dependency>
        <groupId>org.eclipse.jdt</groupId>
        <artifactId>ecj</artifactId>
-      <version>3.40.0</version>
+      <version>3.41.0</version>
      </dependency>
      <dependency>
        <groupId>org.apache.tomcat</groupId>
diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml
index e8e6bcaa76..e699510817 100644
--- a/webapps/docs/changelog.xml
+++ b/webapps/docs/changelog.xml
@@ -294,6 +294,9 @@
        <update>
          Revert JSign to 6.0 to avoid a file locking issue. (markt)
        </update>
+      <update>
+        Update to the Eclipse JDT compiler 4.35. (markt)
+      </update>
      </changelog>
    </subsection>
  </section>


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to