Clinit unknown source java

Saved searches

Use saved searches to filter your results more quickly

You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Java 9 incompatibility #2149

Java 9 incompatibility #2149

Comments

Due to restructuring in the JDK’s internal-use packages, sun.misc is very different in Java 9, and much of it is not available due to the «Project Jigsaw» modularization of the JRE actually making internal-use packages internal. This affects Lein because, at the bare minimum, sun.misc.Launcher is used even when running the command lein with no args. This class, Launcher , is likely being restructured because a new sun.launcher package is present in the root module, whichexports a small subset of sun.misc and other internal-use packages. This subset notably includes the Unsafe class, but that one may be limited to JRE builds that include the module jdk.unsupported , which is discouraged already and a likely candidate for removal in Java 10.

The information on this is scattered around the OpenJDK site, but this JEP is the most relevant: http://openjdk.java.net/jeps/260 , and this section on modularization should also be useful: http://openjdk.java.net/projects/jigsaw/ . I’m using the 4th preview release of the Zulu OpenJDK 9 builds, available here: http://zulu.org/zulu-9-pre-release-downloads/

Читайте также:  Java home как установить linux

The exact stacktrace I get when running lein is:

C:\Program Files\Zulu\compiler>lein Exception in thread "main" java.lang.ExceptionInInitializerError at java.lang.Class.forName0(java.base@9-ea/Native Method) at java.lang.Class.forName(java.base@9-ea/Class.java:378) at clojure.lang.RT.classForName(RT.java:2168) at clojure.lang.RT.classForName(RT.java:2177) at clojure.lang.RT.loadClassForName(RT.java:2196) at clojure.lang.RT.load(RT.java:443) at clojure.lang.RT.load(RT.java:419) at clojure.core$load$fn__5677.invoke(core.clj:5893) at clojure.core$load.invokeStatic(core.clj:5892) at clojure.core$load.doInvoke(core.clj:5876) at clojure.lang.RestFn.invoke(RestFn.java:408) at clojure.core$load_one.invokeStatic(core.clj:5697) at clojure.core$load_one.invoke(core.clj:5692) at clojure.core$load_lib$fn__5626.invoke(core.clj:5737) at clojure.core$load_lib.invokeStatic(core.clj:5736) at clojure.core$load_lib.doInvoke(core.clj:5717) at clojure.lang.RestFn.applyTo(RestFn.java:142) at clojure.core$apply.invokeStatic(core.clj:648) at clojure.core$load_libs.invokeStatic(core.clj:5774) at clojure.core$load_libs.doInvoke(core.clj:5758) at clojure.lang.RestFn.applyTo(RestFn.java:137) at clojure.core$apply.invokeStatic(core.clj:648) at clojure.core$require.invokeStatic(core.clj:5796) at clojure.core$require.doInvoke(core.clj:5796) at clojure.lang.RestFn.invoke(RestFn.java:703) at leiningen.core.project$loading__5569__auto____5958.invoke(project.clj:1) at leiningen.core.project__init.load(Unknown Source) at leiningen.core.project__init.(Unknown Source) at java.lang.Class.forName0(java.base@9-ea/Native Method) at java.lang.Class.forName(java.base@9-ea/Class.java:378) at clojure.lang.RT.classForName(RT.java:2168) at clojure.lang.RT.classForName(RT.java:2177) at clojure.lang.RT.loadClassForName(RT.java:2196) at clojure.lang.RT.load(RT.java:443) at clojure.lang.RT.load(RT.java:419) at clojure.core$load$fn__5677.invoke(core.clj:5893) at clojure.core$load.invokeStatic(core.clj:5892) at clojure.core$load.doInvoke(core.clj:5876) at clojure.lang.RestFn.invoke(RestFn.java:408) at clojure.core$load_one.invokeStatic(core.clj:5697) at clojure.core$load_one.invoke(core.clj:5692) at clojure.core$load_lib$fn__5626.invoke(core.clj:5737) at clojure.core$load_lib.invokeStatic(core.clj:5736) at clojure.core$load_lib.doInvoke(core.clj:5717) at clojure.lang.RestFn.applyTo(RestFn.java:142) at clojure.core$apply.invokeStatic(core.clj:648) at clojure.core$load_libs.invokeStatic(core.clj:5774) at clojure.core$load_libs.doInvoke(core.clj:5758) at clojure.lang.RestFn.applyTo(RestFn.java:137) at clojure.core$apply.invokeStatic(core.clj:648) at clojure.core$require.invokeStatic(core.clj:5796) at clojure.core$require.doInvoke(core.clj:5796) at clojure.lang.RestFn.invoke(RestFn.java:619) at leiningen.core.main$loading__5569__auto____5695.invoke(main.clj:1) at leiningen.core.main__init.load(Unknown Source) at leiningen.core.main__init.(Unknown Source) at java.lang.Class.forName0(java.base@9-ea/Native Method) at java.lang.Class.forName(java.base@9-ea/Class.java:378) at clojure.lang.RT.classForName(RT.java:2168) at clojure.lang.RT.classForName(RT.java:2177) at clojure.lang.RT.loadClassForName(RT.java:2196) at clojure.lang.RT.load(RT.java:443) at clojure.lang.RT.load(RT.java:419) at clojure.core$load$fn__5677.invoke(core.clj:5893) at clojure.core$load.invokeStatic(core.clj:5892) at clojure.core$load.doInvoke(core.clj:5876) at clojure.lang.RestFn.invoke(RestFn.java:408) at clojure.core$load_one.invokeStatic(core.clj:5697) at clojure.core$load_one.invoke(core.clj:5692) at clojure.core$load_lib$fn__5626.invoke(core.clj:5737) at clojure.core$load_lib.invokeStatic(core.clj:5736) at clojure.core$load_lib.doInvoke(core.clj:5717) at clojure.lang.RestFn.applyTo(RestFn.java:142) at clojure.core$apply.invokeStatic(core.clj:648) at clojure.core$load_libs.invokeStatic(core.clj:5774) at clojure.core$load_libs.doInvoke(core.clj:5758) at clojure.lang.RestFn.applyTo(RestFn.java:137) at clojure.core$apply.invokeStatic(core.clj:648) at clojure.core$require.invokeStatic(core.clj:5796) at clojure.main$main_opt.invokeStatic(main.clj:314) at clojure.main$main_opt.invoke(main.clj:310) at clojure.main$main.invokeStatic(main.clj:421) at clojure.main$main.doInvoke(main.clj:384) at clojure.lang.RestFn.invoke(RestFn.java:421) at clojure.lang.Var.invoke(Var.java:383) at clojure.lang.AFn.applyToHelper(AFn.java:156) at clojure.lang.Var.applyTo(Var.java:700) at clojure.main.main(main.java:37) Caused by: java.lang.ClassNotFoundException: sun.misc.Launcher, compiling:(dynapath/defaults.clj:29:3) at clojure.lang.Compiler.analyzeSeq(Compiler.java:6875) at clojure.lang.Compiler.analyze(Compiler.java:6669) at clojure.lang.Compiler.analyze(Compiler.java:6625) at clojure.lang.Compiler$BodyExpr$Parser.parse(Compiler.java:6001) at clojure.lang.Compiler$LetExpr$Parser.parse(Compiler.java:6319) at clojure.lang.Compiler.analyzeSeq(Compiler.java:6868) at clojure.lang.Compiler.analyze(Compiler.java:6669) at clojure.lang.Compiler.analyze(Compiler.java:6625) at clojure.lang.Compiler$BodyExpr$Parser.parse(Compiler.java:6001) at clojure.lang.Compiler$FnMethod.parse(Compiler.java:5380) at clojure.lang.Compiler$FnExpr.parse(Compiler.java:3972) at clojure.lang.Compiler.analyzeSeq(Compiler.java:6866) at clojure.lang.Compiler.analyze(Compiler.java:6669) at clojure.lang.Compiler.eval(Compiler.java:6924) at clojure.lang.Compiler.load(Compiler.java:7379) at clojure.lang.RT.loadResourceScript(RT.java:372) at clojure.lang.RT.loadResourceScript(RT.java:363) at clojure.lang.RT.load(RT.java:453) at clojure.lang.RT.load(RT.java:419) at clojure.core$load$fn__5677.invoke(core.clj:5893) at clojure.core$load.invokeStatic(core.clj:5892) at clojure.core$load.doInvoke(core.clj:5876) at clojure.lang.RestFn.invoke(RestFn.java:408) at clojure.core$load_one.invokeStatic(core.clj:5697) at clojure.core$load_one.invoke(core.clj:5692) at clojure.core$load_lib$fn__5626.invoke(core.clj:5737) at clojure.core$load_lib.invokeStatic(core.clj:5736) at clojure.core$load_lib.doInvoke(core.clj:5717) at clojure.lang.RestFn.applyTo(RestFn.java:142) at clojure.core$apply.invokeStatic(core.clj:648) at clojure.core$load_libs.invokeStatic(core.clj:5774) at clojure.core$load_libs.doInvoke(core.clj:5758) at clojure.lang.RestFn.applyTo(RestFn.java:137) at clojure.core$apply.invokeStatic(core.clj:648) at clojure.core$require.invokeStatic(core.clj:5796) at clojure.core$require.doInvoke(core.clj:5796) at clojure.lang.RestFn.invoke(RestFn.java:421) at dynapath.util$eval254$loading__5569__auto____255.invoke(util.clj:1) at dynapath.util$eval254.invokeStatic(util.clj:1) at dynapath.util$eval254.invoke(util.clj:1) at clojure.lang.Compiler.eval(Compiler.java:6927) at clojure.lang.Compiler.eval(Compiler.java:6916) at clojure.lang.Compiler.load(Compiler.java:7379) at clojure.lang.RT.loadResourceScript(RT.java:372) at clojure.lang.RT.loadResourceScript(RT.java:363) at clojure.lang.RT.load(RT.java:453) at clojure.lang.RT.load(RT.java:419) at clojure.core$load$fn__5677.invoke(core.clj:5893) at clojure.core$load.invokeStatic(core.clj:5892) at clojure.core$load.doInvoke(core.clj:5876) at clojure.lang.RestFn.invoke(RestFn.java:408) at clojure.core$load_one.invokeStatic(core.clj:5697) at clojure.core$load_one.invoke(core.clj:5692) at clojure.core$load_lib$fn__5626.invoke(core.clj:5737) at clojure.core$load_lib.invokeStatic(core.clj:5736) at clojure.core$load_lib.doInvoke(core.clj:5717) at clojure.lang.RestFn.applyTo(RestFn.java:142) at clojure.core$apply.invokeStatic(core.clj:648) at clojure.core$load_libs.invokeStatic(core.clj:5774) at clojure.core$load_libs.doInvoke(core.clj:5758) at clojure.lang.RestFn.applyTo(RestFn.java:137) at clojure.core$apply.invokeStatic(core.clj:648) at clojure.core$require.invokeStatic(core.clj:5796) at clojure.core$require.doInvoke(core.clj:5796) at clojure.lang.RestFn.invoke(RestFn.java:436) at cemerick.pomegranate$loading__5569__auto____12241.invoke(pomegranate.clj:1) at cemerick.pomegranate__init.load(Unknown Source) at cemerick.pomegranate__init.(Unknown Source) . 88 more Caused by: java.lang.ClassNotFoundException: sun.misc.Launcher at java.net.URLClassLoader.findClass(java.base@9-ea/URLClassLoader.java:384) at clojure.lang.DynamicClassLoader.findClass(DynamicClassLoader.java:69) at java.lang.ClassLoader.loadClass(java.base@9-ea/ClassLoader.java:486) at clojure.lang.DynamicClassLoader.loadClass(DynamicClassLoader.java:77) at java.lang.ClassLoader.loadClass(java.base@9-ea/ClassLoader.java:419) at java.lang.Class.forName0(java.base@9-ea/Native Method) at java.lang.Class.forName(java.base@9-ea/Class.java:378) at clojure.lang.RT.classForName(RT.java:2168) at clojure.lang.RT.classForName(RT.java:2177) at clojure.lang.Compiler.maybeResolveIn(Compiler.java:7187) at clojure.core$ns_resolve.invokeStatic(core.clj:4240) at clojure.core$ns_resolve.invokeStatic(core.clj:4229) at clojure.core$resolve.invokeStatic(core.clj:4242) at clojure.core$resolve.invoke(core.clj:4242) at dynapath.defaults$when_resolves.invokeStatic(defaults.clj:9) at dynapath.defaults$when_resolves.doInvoke(defaults.clj:7) at clojure.lang.RestFn.invoke(RestFn.java:467) at clojure.lang.Var.invoke(Var.java:394) at clojure.lang.AFn.applyToHelper(AFn.java:165) at clojure.lang.Var.applyTo(Var.java:700) at clojure.lang.Compiler.macroexpand1(Compiler.java:6776) at clojure.lang.Compiler.analyzeSeq(Compiler.java:6854) . 155 more 

That’s run with a subset of the modules in the normal JDK, but the error is identical if I run with the non-limited module set of a normal OpenJDK 9 installation.

Читайте также:  Javascript ajax data type

This isn’t at all urgent, but I hope there’s an easy fix for using sun.* classes that can be applied sometime before Java 9 starts to become more commonly used.

The text was updated successfully, but these errors were encountered:

Источник

Оцените статью