我目前正在Eclipse中开发一个包含44个java文件和1个SQL文件的Java项目。在今天工作几个小时之后,我注意到当我运行它时,我所做的一切都没有影响程序(我可以删除主类中的所有代码并且它仍然运行良好)。我检查了类文件,注意到它们几天没有被修改(自从我上次工作以来)。在网上做了一些阅读之后,我接受了建议 - 执行Project-> Clean。但是,在执行此操作后,我无法再编译该项目。当我运行主类时,我简单地得到了这个:
Exception in thread "Thread-1" java.lang.NoClassDefFoundError: sprint1/Main2
Caused by: java.lang.ClassNotFoundException: sprint1.Main2
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
我已经检查了构建路径,从我可以说的一切看来都是正确的。我也打开和关闭Project->自动生成无效。我现在唯一能想到的就是创建一个新项目并将所有代码复制到它,但我使用的是各种模糊的罐子和SWT(根据我的经验,它不能很好地转移,如果有的话)。任何人都可以帮我解决这个问题吗?
答案 0 :(得分:3)
检查项目中是否存在任何错误。不只是编译错误。单击项目并检查Eclipse中的“Problems”视图。
我认为通常在项目中缺少任何JAR文件时会发生这种情况。即使你不使用它。
在Eclipse中选择Project - >右键 - >属性 - > Java构建路径 - > “库”选项卡
并检查JAR文件中的任何红色标记。删除Eclipse项目或修复路径(选择JAR并单击“编辑”按钮)。
答案 1 :(得分:2)
您确定您的任何课程都没有构建错误吗?如果有错误,eclipse可以运行以前的无错版本(根据您提供的某些设置)。构建错误也可能导致在项目清理后没有生成类文件。