Skip to content

Not compatible with Java 24 #71

Closed
Closed
@CVR-DKT

Description

@CVR-DKT

Hello.

In Java 24, the URLClassPath.findResource(String,boolean) and URLClassPath.findResources(String,boolean) methods have been replaced by URLClassPath.findResource(String) and URLClassPath.findResources(String), which means that the DynamicDriver can no longer be created (InvocationTargetException due to a NoSuchMethodException)… :(
Could you please adapt jvm-driver to be JDK24 compatible?

Thanks in advance!

Christophe.

io.github.toolfactory.jvm.Driver$InitializeException: Could not initialize DynamicDriver
	at io.github.toolfactory.jvm.DriverAbst.refresh(DriverAbst.java:257)
	at io.github.toolfactory.jvm.DriverAbst.getBuiltinClassLoaderClass(DriverAbst.java:944)
	at org.burningwave.core.classes.Classes$Loaders.<init>(Classes.java:346)
	at org.burningwave.core.classes.Classes$Loaders.create(Classes.java:359)
	at org.burningwave.core.assembler.StaticComponentContainer.<clinit>(StaticComponentContainer.java:382)
…
Caused by: io.github.toolfactory.jvm.util.ObjectProvider$BuildingException: Exception occurred while retrieving the implementation of class io.github.toolfactory.jvm.function.catalog.GetResourcesFunction (jvm architecture: x64, jvm version: 24, jvm vendor: Eclipse Adoptium)
	at io.github.toolfactory.jvm.util.ObjectProvider.getOrBuildObject(ObjectProvider.java:95)
	at io.github.toolfactory.jvm.DriverAbst.getOrBuildResourcesRetriever(DriverAbst.java:436)
	at io.github.toolfactory.jvm.DriverAbst.refresh(DriverAbst.java:229)
	... 101 more
Caused by: java.lang.reflect.InvocationTargetException
	at java.base/jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:74)
	at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)
	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:483)
	at io.github.toolfactory.jvm.util.ObjectProvider.getOrBuildObjectInternal(ObjectProvider.java:144)
	at io.github.toolfactory.jvm.util.ObjectProvider.getOrBuildObject(ObjectProvider.java:92)
	... 103 more
Caused by: java.lang.NoSuchMethodException: no such method: jdk.internal.loader.URLClassPath.findResources(String,boolean)Enumeration/invokeVirtual
	at java.base/java.lang.invoke.MemberName.makeAccessException(MemberName.java:910)
	at java.base/java.lang.invoke.MemberName$Factory.resolveOrFail(MemberName.java:989)
	at java.base/java.lang.invoke.MethodHandles$Lookup.resolveOrFail(MethodHandles.java:3592)
	at java.base/java.lang.invoke.MethodHandles$Lookup.findVirtual(MethodHandles.java:2611)
	at io.github.toolfactory.jvm.function.catalog.GetResourcesFunction$ForJava9$1.<init>(GetResourcesFunction.java:164)
	at io.github.toolfactory.jvm.function.catalog.GetResourcesFunction$ForJava9.buildResourceFinder(GetResourcesFunction.java:134)
	at io.github.toolfactory.jvm.function.catalog.GetResourcesFunction$Abst.<init>(GetResourcesFunction.java:56)
	at io.github.toolfactory.jvm.function.catalog.GetResourcesFunction$ForJava7.<init>(GetResourcesFunction.java:92)
	at io.github.toolfactory.jvm.function.catalog.GetResourcesFunction$ForJava9.<init>(GetResourcesFunction.java:123)
	at java.base/jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:62)
	... 107 more
Caused by: java.lang.NoSuchMethodError: method resolution failed
	at java.base/java.lang.invoke.MethodHandleNatives.resolve(Native Method)
	at java.base/java.lang.invoke.MemberName$Factory.resolve(MemberName.java:957)
	at java.base/java.lang.invoke.MemberName$Factory.resolveOrFail(MemberName.java:986)
	... 115 more

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions