Browse Source

Make BCEL classpath utility recognise Java 15, fixing many tests

Inside org.aspectj.apache.bcel.util.ClassPath.getClassPath(), some JVM
version matching occurs which previously did not include Java 15.
Technically, AspectJ 1.9.6 does not support Java 15, but on GitHub
Actions there is a build job running on a JVM 15. This change should at
least make the weaver tests pass, making that test job more meaningful.

This fixes test errors like

java.lang.ClassCastException:
  class org.aspectj.weaver.MissingResolvedTypeWithKnownSignature
  cannot be cast to class
  org.aspectj.weaver.ReferenceType
  (org.aspectj.weaver.MissingResolvedTypeWithKnownSignature and
  org.aspectj.weaver.ReferenceType are in unnamed module
  of loader 'app')

Signed-off-by: Alexander Kriegisch <Alexander@Kriegisch.name>
tags/java16-add-opens
Alexander Kriegisch 3 years ago
parent
commit
07af5d416e

+ 1
- 5
bcel-builder/src/main/java/org/aspectj/apache/bcel/util/ClassPath.java View File

@@ -227,11 +227,7 @@ public class ClassPath implements Serializable {
}

// On Java9 the sun.boot.class.path won't be set. System classes accessible through JRT filesystem
if (vm_version.startsWith("9") || vm_version.startsWith("10")
|| vm_version.startsWith("11")
|| vm_version.startsWith("12")
|| vm_version.startsWith("13")
|| vm_version.startsWith("14")) {
if (vm_version.matches("^(9|10|11|12|13|14|15).*")) {
buf.insert(0, File.pathSeparatorChar);
buf.insert(0, System.getProperty("java.home") + File.separator + "lib" + File.separator + JRT_FS);
}

Loading…
Cancel
Save