Skip to content

Instantly share code, notes, and snippets.

@borkdude
Last active May 7, 2018 07:56
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save borkdude/e2383be4ea0ec0bb791a4ea1d2f9b0a5 to your computer and use it in GitHub Desktop.
Save borkdude/e2383be4ea0ec0bb791a4ea1d2f9b0a5 to your computer and use it in GitHub Desktop.
cljtree GraalVM compiler errors
$ native-image --server-shutdown-all && native-image -jar tmp/cljtree.jar -H:Name="cljtree"
Build on Server(pid: 24775, port: 26681)*
classlist: 2,510.04 ms
(cap): 2,173.97 ms
setup: 3,461.33 ms
analysis: 28,474.44 ms
error: unsupported features in 5 methods
Detailed message:
Error: com.oracle.graal.pointsto.constraints.UnsupportedFeatureException: Unsupported constructor java.lang.ClassLoader.<init>(ClassLoader) is reachable: The declaring class of this element has been substituted, but this element is not present in the substitution class
To diagnose the issue, you can add the option -H:+ReportUnsupportedElementsAtRuntime. The unsupported element is then reported at run time when it is accessed the first time.
Trace:
at parsing java.security.SecureClassLoader.<init>(SecureClassLoader.java:76)
Call path from entry point to java.security.SecureClassLoader.<init>(ClassLoader):
at java.security.SecureClassLoader.<init>(SecureClassLoader.java:76)
at java.net.URLClassLoader.<init>(URLClassLoader.java:100)
at clojure.lang.DynamicClassLoader.<init>(DynamicClassLoader.java:41)
at clojure.main$repl.invokeStatic(main.clj:222)
at clojure.core.server$repl.invokeStatic(server.clj:177)
at clojure.core.server$repl.invoke(server.clj:177)
at clojure.lang.AFn.run(AFn.java:22)
at java.lang.Thread.run(Thread.java:748)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:222)
at Lcom/oracle/svm/core/code/CEntryPointCallStubs;.com_002eoracle_002esvm_002ecore_002eposix_002ethread_002ePosixJavaThreads_002epthreadStartRoutine_0028com_002eoracle_002esvm_002ecore_002eposix_002ethread_002ePosixJavaThreads_0024ThreadStartData_0029(generated:0)
Error: com.oracle.graal.pointsto.constraints.UnsupportedFeatureException: Unsupported field java.lang.reflect.Proxy.proxyClassCache is reachable
To diagnose the issue, you can add the option -H:+ReportUnsupportedElementsAtRuntime. The unsupported element is then reported at run time when it is accessed the first time.
Trace:
at parsing java.lang.reflect.Proxy.isProxyClass(Proxy.java:791)
Call path from entry point to java.lang.reflect.Proxy.isProxyClass(Class):
at java.lang.reflect.Proxy.isProxyClass(Proxy.java:791)
at sun.reflect.misc.ReflectUtil.isNonPublicProxyClass(ReflectUtil.java:289)
at sun.reflect.misc.ReflectUtil.checkPackageAccess(ReflectUtil.java:165)
at sun.reflect.misc.ReflectUtil.isPackageAccessible(ReflectUtil.java:195)
at java.beans.Introspector.getBeanInfo(Introspector.java:164)
at clojure.core$bean.invokeStatic(core_proxy.clj:411)
at clojure.core$bean.invoke(core_proxy.clj:398)
at clojure.core$keep$fn__8200.invoke(core.clj:7261)
at clojure.lang.AFn.run(AFn.java:22)
at java.lang.Thread.run(Thread.java:748)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:222)
at Lcom/oracle/svm/core/code/CEntryPointCallStubs;.com_002eoracle_002esvm_002ecore_002eposix_002ethread_002ePosixJavaThreads_002epthreadStartRoutine_0028com_002eoracle_002esvm_002ecore_002eposix_002ethread_002ePosixJavaThreads_0024ThreadStartData_0029(generated:0)
Error: com.oracle.graal.pointsto.constraints.UnsupportedFeatureException: Unsupported method java.lang.ClassLoader.defineClass(String, byte[], int, int) is reachable: The declaring class of this element has been substituted, but this element is not present in the substitution class
To diagnose the issue, you can add the option -H:+ReportUnsupportedElementsAtRuntime. The unsupported element is then reported at run time when it is accessed the first time.
Trace:
at parsing clojure.lang.DynamicClassLoader.defineClass(DynamicClassLoader.java:46)
Call path from entry point to clojure.lang.DynamicClassLoader.defineClass(String, byte[], Object):
at clojure.lang.DynamicClassLoader.defineClass(DynamicClassLoader.java:45)
at clojure.core$get_proxy_class.invokeStatic(core_proxy.clj:288)
at clojure.core$get_proxy_class.doInvoke(core_proxy.clj:276)
at clojure.lang.RestFn.invoke(RestFn.java:397)
at clojure.lang.AFn.run(AFn.java:22)
at java.lang.Thread.run(Thread.java:748)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:222)
at Lcom/oracle/svm/core/code/CEntryPointCallStubs;.com_002eoracle_002esvm_002ecore_002eposix_002ethread_002ePosixJavaThreads_002epthreadStartRoutine_0028com_002eoracle_002esvm_002ecore_002eposix_002ethread_002ePosixJavaThreads_0024ThreadStartData_0029(generated:0)
Error: com.oracle.graal.pointsto.constraints.UnsupportedFeatureException: Unsupported type java.net.JarURLConnection is reachable
To diagnose the issue, you can add the option -H:+ReportUnsupportedElementsAtRuntime. The unsupported element is then reported at run time when it is accessed the first time.
Trace:
at parsing clojure.lang.RT.lastModified(RT.java:398)
Call path from entry point to clojure.lang.RT.lastModified(URL, String):
at clojure.lang.RT.lastModified(RT.java:395)
at clojure.lang.RT.load(RT.java:441)
at clojure.lang.RT.load(RT.java:426)
at clojure.core$load$fn__6546.invoke(core.clj:6046)
at clojure.lang.AFn.run(AFn.java:22)
at java.lang.Thread.run(Thread.java:748)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:222)
at Lcom/oracle/svm/core/code/CEntryPointCallStubs;.com_002eoracle_002esvm_002ecore_002eposix_002ethread_002ePosixJavaThreads_002epthreadStartRoutine_0028com_002eoracle_002esvm_002ecore_002eposix_002ethread_002ePosixJavaThreads_0024ThreadStartData_0029(generated:0)
Error: com.oracle.graal.pointsto.constraints.UnsupportedFeatureException: Unsupported type java.net.JarURLConnection is reachable
To diagnose the issue, you can add the option -H:+ReportUnsupportedElementsAtRuntime. The unsupported element is then reported at run time when it is accessed the first time.
Trace:
at parsing java.net.URLClassLoader.getResourceAsStream(URLClassLoader.java:239)
Call path from entry point to java.net.URLClassLoader.getResourceAsStream(String):
at java.net.URLClassLoader.getResourceAsStream(URLClassLoader.java:232)
at clojure.lang.RT.resourceAsStream(RT.java:2183)
at clojure.lang.RT.compile(RT.java:410)
at clojure.lang.RT.load(RT.java:458)
at clojure.lang.RT.load(RT.java:426)
at clojure.core$load$fn__6546.invoke(core.clj:6046)
at clojure.lang.AFn.run(AFn.java:22)
at java.lang.Thread.run(Thread.java:748)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:222)
at Lcom/oracle/svm/core/code/CEntryPointCallStubs;.com_002eoracle_002esvm_002ecore_002eposix_002ethread_002ePosixJavaThreads_002epthreadStartRoutine_0028com_002eoracle_002esvm_002ecore_002eposix_002ethread_002ePosixJavaThreads_0024ThreadStartData_0029(generated:0)
Error: Processing image build request failed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment