diff --git a/.github/workflows/ant.yml b/.github/workflows/ant.yml
index 4a53d4278f..a31cb3e3e4 100644
--- a/.github/workflows/ant.yml
+++ b/.github/workflows/ant.yml
@@ -108,6 +108,7 @@ jobs:
- eclipse-202312
- eclipse-202403
- eclipse-202406
+ - eclipse-202409
- eclipse-I-build
- eclipse-oxygen-full
- eclipse-2022-03-full
@@ -115,6 +116,7 @@ jobs:
- eclipse-2023-12-full
- eclipse-2024-03-full
- eclipse-2024-06-full
+ - eclipse-2024-09-full
- eclipse-I-build-full
- ecj11
- ecj14
diff --git a/buildScripts/ivy.xml b/buildScripts/ivy.xml
index 38b4878563..de31decdfb 100644
--- a/buildScripts/ivy.xml
+++ b/buildScripts/ivy.xml
@@ -35,6 +35,7 @@
+
@@ -148,7 +149,7 @@
-
+
@@ -161,7 +162,7 @@
-
+
@@ -175,6 +176,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/buildScripts/setup.ant.xml b/buildScripts/setup.ant.xml
index 91d3d478bf..abd8d386fa 100644
--- a/buildScripts/setup.ant.xml
+++ b/buildScripts/setup.ant.xml
@@ -180,6 +180,10 @@ This buildfile is part of projectlombok.org. It sets up the build itself.
+
+
+
+
diff --git a/buildScripts/tests.ant.xml b/buildScripts/tests.ant.xml
index 6044551823..766d2b5fd3 100644
--- a/buildScripts/tests.ant.xml
+++ b/buildScripts/tests.ant.xml
@@ -233,6 +233,11 @@ This buildfile is part of projectlombok.org. It takes care of compiling and runn
+
+
+
+
+
@@ -313,6 +318,10 @@ This buildfile is part of projectlombok.org. It takes care of compiling and runn
+
+
+
+
diff --git a/src/support/lombok/eclipse/dependencies/DownloadEclipseDependencies.java b/src/support/lombok/eclipse/dependencies/DownloadEclipseDependencies.java
index 0e8d589504..0aa9934dd4 100644
--- a/src/support/lombok/eclipse/dependencies/DownloadEclipseDependencies.java
+++ b/src/support/lombok/eclipse/dependencies/DownloadEclipseDependencies.java
@@ -36,6 +36,9 @@
import java.util.Arrays;
import java.util.List;
import java.util.Set;
+import java.util.zip.ZipEntry;
+import java.util.zip.ZipInputStream;
+import java.util.zip.ZipOutputStream;
/**
* Download eclipse bundles.
@@ -87,12 +90,22 @@ private static void downloadFile(String filename, String repositoryUrl, String t
return;
}
System.out.print("Downloading '" + filename + "'... ");
- InputStream in = null;
- OutputStream out = null;
+ ZipInputStream in = null;
+ ZipOutputStream out = null;
try {
- in = getStreamForUrl(repositoryUrl + filename);
- out = new FileOutputStream(targetFile);
- copy(in, out);
+ in = new ZipInputStream(getStreamForUrl(repositoryUrl + filename));
+ out = new ZipOutputStream(new FileOutputStream(targetFile));
+
+ ZipEntry zipEntry;
+ while ((zipEntry = in.getNextEntry()) != null) {
+ String name = zipEntry.getName();
+
+ // Remove signature files
+ if (name.matches("META-INF/.*\\.(SF|RSA)")) continue;
+
+ out.putNextEntry(new ZipEntry(name));
+ copy(in, out);
+ }
System.out.println("[done]");
} catch (IOException e) {
System.out.println("[error]");
diff --git a/test/core/src/lombok/RunTestsViaEcj.java b/test/core/src/lombok/RunTestsViaEcj.java
index 352ba4e6c9..3a0f02e26e 100644
--- a/test/core/src/lombok/RunTestsViaEcj.java
+++ b/test/core/src/lombok/RunTestsViaEcj.java
@@ -79,7 +79,6 @@ protected CompilerOptions ecjCompilerOptions(TestParameters parameters) {
options.targetJDK = ecjCompilerVersionConstant;
options.docCommentSupport = false;
options.parseLiteralExpressionsAsConstants = true;
- options.inlineJsrBytecode = true;
options.reportUnusedDeclaredThrownExceptionExemptExceptionAndThrowable = false;
options.reportUnusedDeclaredThrownExceptionIncludeDocCommentReference = false;
options.reportUnusedDeclaredThrownExceptionWhenOverriding = false;
@@ -96,6 +95,7 @@ protected CompilerOptions ecjCompilerOptions(TestParameters parameters) {
warnings.put(CompilerOptions.OPTION_ReportNonStaticAccessToStatic, "warning");
warnings.put("org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures", "ignore");
warnings.put(CompilerOptions.OPTION_Source, (ecjCompilerVersion < 9 ? "1." : "") + ecjCompilerVersion);
+ warnings.put(CompilerOptions.OPTION_TargetPlatform, (ecjCompilerVersion < 9 ? "1." : "") + ecjCompilerVersion);
warnings.put("org.eclipse.jdt.core.compiler.codegen.useStringConcatFactory", "disabled");
options.set(warnings);
return options;