Eclipse中的奇怪"java.lang.NoClassDefFoundError"

Ant*_*nto 43 java eclipse

我在Eclipse中有一个Java项目完全顺利运行,直到今天下午我更新了一些文件(包括一个ant build.xml文件).构建项目时,出现以下错误:

java.lang.NoClassDefFoundError: proj/absa/FrontEnd/ApplicationStarter
Caused by: java.lang.ClassNotFoundException: proj.absa.FrontEnd.ApplicationStarter
    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)  
Exception in thread "main" 
Run Code Online (Sandbox Code Playgroud)

有没有人知道问题可能是什么?

rmt*_*eis 39

在Eclipse中做Project-> Clean ...为我解决了这个问题.


duf*_*ymo 9

java.lang.ClassNotFoundException表示CLASSPATH问题.没有线索暗示您假设CLASSPATH设置正确,但事实并非如此.

如果您使用Eclipse构建,请确保存在已编译的.class文件的目录位于CLASSPATH中,并且其中包含必需的.class文件.

如果您使用Ant构建,请确保在build.xml中看到类似的内容:

<path id="production.class.path">
    <pathelement location="${production.classes}"/>
    <pathelement location="${production.resources}"/>
    <fileset dir="${production.lib}">
        <include name="**/*.jar"/>
        <exclude name="**/junit*.jar"/>
        <exclude name="**/*test*.jar"/>
    </fileset>
</path>
Run Code Online (Sandbox Code Playgroud)

更新:您的PATH中没有JAVA_HOME/bin,或者您下载了JRE而不是JDK.检查安装Java的目录,查看/ bin目录中是否包含javac.exe.如果您没有/ bin,请下载JDK并进行安装.

如果你有一个带有javac.exe的/ bin,请检查你的PATH以查看Java/bin目录是否在PATH中.设置完成后,打开命令shell并输入"javac -version"以确保一切顺利.

你告诉Eclipse使用什么JDK?