简体   繁体   中英

java.lang.ExceptionInInitializerError while running lein command to instal leiningen

While running lein in the shell, the console output is:

Exception in thread "main" java.lang.ExceptionInInitializerError
    at clojure.core$fn__8478.invokeStatic(core.clj:7060)
    at clojure.core$fn__8478.invoke(core.clj:7055)
    at clojure.core__init.load(Unknown Source)
    at clojure.core__init.<clinit>(Unknown Source)
    at java.lang.Class.forName0(java.base@9-internal/Native Method)
    at java.lang.Class.forName(java.base@9-internal/Class.java:378)
    at clojure.lang.RT.classForName(RT.java:2207)
    at clojure.lang.RT.classForName(RT.java:2216)
    at clojure.lang.RT.loadClassForName(RT.java:2235)
    at clojure.lang.RT.load(RT.java:453)
    at clojure.lang.RT.load(RT.java:428)
    at clojure.lang.RT.doInit(RT.java:471)
    at clojure.lang.RT.<clinit>(RT.java:338)
    at clojure.main.<clinit>(main.java:20)
Caused by: java.lang.NoSuchMethodException: no such method:java.lang.reflect.Method.canAccess(Object)boolean/invokeVirtual
    at java.lang.invoke.MemberName.makeAccessException(java.base@9-    internal/MemberName.java:929)
    at java.lang.invoke.MemberName$Factory.resolveOrFail(java.base@9-internal/MemberName.java:1046)
    at java.lang.invoke.MethodHandles$Lookup.resolveOrFail(java.base@9-internal/MethodHandles.java:1683)
    at java.lang.invoke.MethodHandles$Lookup.findVirtual(java.base@9-internal/MethodHandles.java:939)
    at clojure.lang.Reflector.<clinit>(Reflector.java:38)
    ... 14 more
Caused by: java.lang.NoSuchMethodError:java.lang.reflect.Method.canAccess(Ljava/lang/Object;)Z
    at java.lang.invoke.MethodHandleNatives.resolve(java.base@9-internal/Native Method)
    at java.lang.invoke.MemberName$Factory.resolve(java.base@9-internal/MemberName.java:1018)
    at java.lang.invoke.MemberName$Factory.resolveOrFail(java.base@9-internal/MemberName.java:1043)
    ... 17 more

I am unable to apply the solution proposed on the thread cannot run lein script . The command lein version output the same.

Using ubuntu 16.04

update-java-alternatives -l output:

java-1.8.0-openjdk-amd64       1081       /usr/lib/jvm/java-1.8.0-openjdk-amd64
java-1.9.0-openjdk-amd64       1091       /usr/lib/jvm/java-1.9.0-openjdk-amd64

java -version output:

openjdk version "9-internal"
OpenJDK Runtime Environment (build 9-internal+0-2016-04-14-195246.buildd.src)
OpenJDK 64-Bit Server VM (build 9-internal+0-2016-04-14-195246.buildd.src, mixed mode)

$PATH output :

/home/camello/bin:/home/camello/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

Actually trying to install Lighttable editor...lol

The problem is openjdk version "9-internal"

You have to install the default JRE/JDK.

Purge/remove previous JRE/JDK installation. Update the package index:

sudo apt-get update

Next, install Java. Specifically, this command will install the Java Runtime Environment (JRE):

sudo apt-get install default-jre

You can install the JDK with the following command:

sudo apt-get install default-jdk

Command java -version should output something like that:

openjdk version "1.8.0_212"
OpenJDK Runtime Environment (build 1.8.0_212-8u212-b03-0ubuntu1.16.04.1-b03)
OpenJDK 64-Bit Server VM (build 25.212-b03, mixed mode)

That's all.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM