Java 使用AST时eclipse中的NoClassDefFoundError
在eclipse中的java项目中尝试使用AST时,我得到以下错误消息:is runtime: 主线程java.lang.NoClassDefFoundError中出现异常:org/eclipse/core/runtime/IAdaptable 我已经尝试将core.runtime jar添加到构建路径中,但没有帮助 代码一开始就失败了:Java 使用AST时eclipse中的NoClassDefFoundError,java,eclipse,runtime,abstract-syntax-tree,Java,Eclipse,Runtime,Abstract Syntax Tree,在eclipse中的java项目中尝试使用AST时,我得到以下错误消息:is runtime: 主线程java.lang.NoClassDefFoundError中出现异常:org/eclipse/core/runtime/IAdaptable 我已经尝试将core.runtime jar添加到构建路径中,但没有帮助 代码一开始就失败了: AST ast = AST.newAST(AST.JLS4); 我也试着把所有的罐子都加到我的电脑里,但是没有用。有什么想法吗 堆栈跟踪: Exceptio
AST ast = AST.newAST(AST.JLS4);
我也试着把所有的罐子都加到我的电脑里,但是没有用。有什么想法吗
堆栈跟踪:
Exception in thread "main" java.lang.NoClassDefFoundError: org/eclipse/core/runtime/IAdaptable
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(Unknown Source)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$000(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(Unknown Source)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$000(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at testRun.main(testRun.java:44)
Caused by: java.lang.ClassNotFoundException: org.eclipse.core.runtime.IAdaptable
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 25 more
除了将org.eclipse.jdt.core[version\u number].jar添加到构建路径之外,还需要将org.eclipse.equinox.common[version\u number].jar添加到构建路径。除了将org.eclipse.jdt.core[version\u number].jar添加到构建路径之外,还需要将org.eclipse.equinox.common\u[version\u number].jar。您是否制作了可执行的jar?如果您在eclipse上按“播放”来运行堆栈traceNo jar,这会有所帮助。您是否做了任何调整目标平台的工作?你按下“播放”按钮的文本是什么?您是在开发插件还是Java应用程序?提供更多细节。你制作了一个可执行的jar吗?如果你发布你的堆栈traceNo jar,通过在eclipse上按“play”来运行,会有所帮助。你做了什么调整目标平台的工作吗?你按下“播放”按钮的文本是什么?您是在开发插件还是Java应用程序?请给出更多细节。@Templar,因为org.eclipse.core.runtime.IAdaptable类是在org.eclipse.equinox包中定义的。common@Sean我有这两个JAR org.eclipse.equinox.common-3.6.0.v20100503和org.eclipse.jdt.core-3.7.0.v_B61,但仍然得到相同的异常。两个JAR的版本号是否需要相同?我还有org.eclipse.core.runtime-3.1.0.jar,它也有IAdaptable类。即使我移除这个罐子,它仍然会给出同样的错误。有什么想法吗?@shryanspagariya我认为你应该使用兼容版本,比如保持所有这些罐子的最新版本。从mvnrepo搜索;确保将这些罐子添加到您的容器中classpath@Templar因为类org.eclipse.core.runtime.IAdaptable是在包org.eclipse.equinox中定义的。common@Sean我有这两个JAR org.eclipse.equinox.common-3.6.0.v20100503和org.eclipse.jdt.core-3.7.0.v_B61,但仍然得到相同的异常。两个JAR的版本号是否需要相同?我还有org.eclipse.core.runtime-3.1.0.jar,它也有IAdaptable类。即使我移除这个罐子,它仍然会给出同样的错误。有什么想法吗?@shryanspagariya我认为你应该使用兼容版本,比如保持所有这些罐子的最新版本。从mvnrepo搜索;确保将这些JAR添加到类路径中