Skip to content

Commit 8efe764

Browse files
committed
[UNDERTOW-2530] Adding support for JDK20, JDK21, JDK22 and JDK23 in Jastow compiler and setting JDK17 as default compilation target
1 parent 0ff7ad0 commit 8efe764

File tree

2 files changed

+30
-10
lines changed

2 files changed

+30
-10
lines changed

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@
5353
<version.jakarta.servlet.jsp.jakarta-servlet-jsp-api>3.1.1</version.jakarta.servlet.jsp.jakarta-servlet-jsp-api>
5454
<version.junit>4.13.2</version.junit>
5555
<version.org.apache.httpcomponents>4.5.14</version.org.apache.httpcomponents>
56-
<version.org.eclipse.jdt.ecj>3.32.0</version.org.eclipse.jdt.ecj>
56+
<version.org.eclipse.jdt.ecj>3.40.0</version.org.eclipse.jdt.ecj>
5757
<version.org.glassfish.expressly>5.0.0</version.org.glassfish.expressly>
5858
<version.org.jboss.logging.jboss-logging>3.6.1.Final</version.org.jboss.logging.jboss-logging>
5959
<version.org.jboss.logging.jboss-logging-tools>3.0.3.Final</version.org.jboss.logging.jboss-logging-tools>

src/main/java/org/apache/jasper/compiler/JDTCompiler.java

Lines changed: 29 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -292,7 +292,7 @@ public void cleanup() {
292292
}
293293

294294
// Source JVM
295-
if(ctxt.getOptions().getCompilerSourceVM() != null) {
295+
if (ctxt.getOptions().getCompilerSourceVM() != null) {
296296
String opt = ctxt.getOptions().getCompilerSourceVM();
297297
if(opt.equals("1.1")) {
298298
settings.put(CompilerOptions.OPTION_Source, CompilerOptions.VERSION_1_1);
@@ -332,17 +332,25 @@ public void cleanup() {
332332
settings.put(CompilerOptions.OPTION_Source, CompilerOptions.VERSION_18);
333333
} else if (opt.equals("19")) {
334334
settings.put(CompilerOptions.OPTION_Source, CompilerOptions.VERSION_19);
335+
} else if (opt.equals("20")) {
336+
settings.put(CompilerOptions.OPTION_Source, CompilerOptions.VERSION_20);
337+
} else if (opt.equals("21")) {
338+
settings.put(CompilerOptions.OPTION_Source, CompilerOptions.VERSION_21);
339+
} else if (opt.equals("22")) {
340+
settings.put(CompilerOptions.OPTION_Source, CompilerOptions.VERSION_22);
341+
} else if (opt.equals("23")) {
342+
settings.put(CompilerOptions.OPTION_Source, CompilerOptions.VERSION_23);
335343
} else {
336344
JasperLogger.COMPILER_LOGGER.unknownSourceJvm(opt);
337-
settings.put(CompilerOptions.OPTION_Source, CompilerOptions.VERSION_11);
345+
settings.put(CompilerOptions.OPTION_Source, CompilerOptions.VERSION_17);
338346
}
339347
} else {
340-
// Default to 11
341-
settings.put(CompilerOptions.OPTION_Source, CompilerOptions.VERSION_11);
348+
// Default to 17
349+
settings.put(CompilerOptions.OPTION_Source, CompilerOptions.VERSION_17);
342350
}
343351

344352
// Target JVM
345-
if(ctxt.getOptions().getCompilerTargetVM() != null) {
353+
if (ctxt.getOptions().getCompilerTargetVM() != null) {
346354
String opt = ctxt.getOptions().getCompilerTargetVM();
347355
if(opt.equals("1.1")) {
348356
settings.put(CompilerOptions.OPTION_TargetPlatform, CompilerOptions.VERSION_1_1);
@@ -397,14 +405,26 @@ public void cleanup() {
397405
} else if (opt.equals("19")) {
398406
settings.put(CompilerOptions.OPTION_TargetPlatform, CompilerOptions.VERSION_19);
399407
settings.put(CompilerOptions.OPTION_Compliance, CompilerOptions.VERSION_19);
408+
} else if (opt.equals("20")) {
409+
settings.put(CompilerOptions.OPTION_TargetPlatform, CompilerOptions.VERSION_20);
410+
settings.put(CompilerOptions.OPTION_Compliance, CompilerOptions.VERSION_20);
411+
} else if (opt.equals("21")) {
412+
settings.put(CompilerOptions.OPTION_TargetPlatform, CompilerOptions.VERSION_21);
413+
settings.put(CompilerOptions.OPTION_Compliance, CompilerOptions.VERSION_21);
414+
} else if (opt.equals("22")) {
415+
settings.put(CompilerOptions.OPTION_TargetPlatform, CompilerOptions.VERSION_22);
416+
settings.put(CompilerOptions.OPTION_Compliance, CompilerOptions.VERSION_22);
417+
} else if (opt.equals("23")) {
418+
settings.put(CompilerOptions.OPTION_TargetPlatform, CompilerOptions.VERSION_23);
419+
settings.put(CompilerOptions.OPTION_Compliance, CompilerOptions.VERSION_23);
400420
} else {
401421
JasperLogger.COMPILER_LOGGER.unknownTargetJvm(opt);
402-
settings.put(CompilerOptions.OPTION_TargetPlatform, CompilerOptions.VERSION_11);
422+
settings.put(CompilerOptions.OPTION_TargetPlatform, CompilerOptions.VERSION_17);
403423
}
404424
} else {
405-
// Default to 11
406-
settings.put(CompilerOptions.OPTION_TargetPlatform, CompilerOptions.VERSION_11);
407-
settings.put(CompilerOptions.OPTION_Compliance, CompilerOptions.VERSION_11);
425+
// Default to 17
426+
settings.put(CompilerOptions.OPTION_TargetPlatform, CompilerOptions.VERSION_17);
427+
settings.put(CompilerOptions.OPTION_Compliance, CompilerOptions.VERSION_17);
408428
}
409429

410430
final IProblemFactory problemFactory = new DefaultProblemFactory(Locale.getDefault());

0 commit comments

Comments
 (0)