1.1.0 meghanada-run-junit-class throws exception NoClassDefFoundError Lcom/sun/source/tree/LineMap
Closed this issue · 6 comments
halcyon commented
Regression appears to have been introduced in 1.1.0, as 1.0.14 and lower do not throw this exception when meghanada-run-junit-class
is run.
Running experiment.AppTest
Exception in thread "pool-2-thread-1" java.lang.NoClassDefFoundError: Lcom/sun/source/tree/LineMap;
at java.lang.Class.getDeclaredFields0(Native Method)
at java.lang.Class.privateGetDeclaredFields(Class.java:2583)
at java.lang.Class.getDeclaredFields(Class.java:1916)
at org.nustaq.serialization.FSTClazzInfo.getAllFields(FSTClazzInfo.java:249)
at org.nustaq.serialization.FSTClazzInfo.createFields(FSTClazzInfo.java:355)
at org.nustaq.serialization.FSTClazzInfo.<init>(FSTClazzInfo.java:127)
at org.nustaq.serialization.FSTClazzInfoRegistry.getCLInfo(FSTClazzInfoRegistry.java:129)
at org.nustaq.serialization.FSTClazzNameRegistry.addClassMapping(FSTClazzNameRegistry.java:98)
at org.nustaq.serialization.FSTClazzNameRegistry.registerClassNoLookup(FSTClazzNameRegistry.java:85)
at org.nustaq.serialization.FSTClazzNameRegistry.registerClass(FSTClazzNameRegistry.java:81)
at org.nustaq.serialization.FSTConfiguration.registerClass(FSTConfiguration.java:788)
at meghanada.store.Serializer.getFST(Serializer.java:46)
at meghanada.store.Serializer.asByte(Serializer.java:122)
at meghanada.store.ProjectDatabase.setSerializeBlobData(ProjectDatabase.java:194)
at meghanada.store.ProjectDatabase.putObject(ProjectDatabase.java:175)
at meghanada.store.ProjectDatabase.lambda$storeObjects$4(ProjectDatabase.java:459)
at jetbrains.exodus.entitystore.PersistentEntityStoreImpl.computeInTransaction(PersistentEntityStoreImpl.java:738)
at meghanada.store.ProjectDatabase.storeObjects(ProjectDatabase.java:455)
at meghanada.store.ProjectDatabase.mergeAndStore(ProjectDatabase.java:275)
at meghanada.store.ProjectDatabase.lambda$initWorker$1(ProjectDatabase.java:224)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.ClassNotFoundException: com.sun.source.tree.LineMap
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 23 more
Tests run: 1, Failures: 0, Ignore: 0, Time elapsed: 178.6 ms
Success
mopemope commented
@halcyon Please check if JAVA_HOME
is correct.
And check if $JAVA_HOME/lib/tools.jar
exists.
halcyon commented
± % echo $JAVA_HOME
/home/ksm/.asdf/installs/java/zulu-8.0.212
± % ls $JAVA_HOME/lib/tools.jar
/home/ksm/.asdf/installs/java/zulu-8.0.212/lib/tools.jar
halcyon commented
halcyon commented
Thank you for meghanada, it's awesome! I'm sure you are already aware, but just in case - tools.jar was removed in JDK 9 and higher .
mopemope commented
Fixed.