use*_*075 5 java eclipse compilation class build
我不小心删除了我的项目中的.class(Java字节码)文件(在文件系统上,而不是使用Eclipse本身).容易修复,对吧?只需重新构建它.但这不起作用!即使我从"项目"菜单中选择"构建项目"或"全部构建"或"自动构建",文件系统上也没有实际发生任何事情,我仍然得到:
Exception in thread "main" java.lang.NoClassDefFoundError
Run Code Online (Sandbox Code Playgroud)
我只想从我已有的源代码重新编译它!
顺便说一下,当我从"Project"菜单中选择"Clean ..."时,Eclipse也不会删除任何文件.我也尝试将项目重新导入到不同的文件夹中,但Eclipse只复制所有.class文件,问题仍然存在.
OP在评论中回答了他自己的问题(2年半前):
找到解决方案:该项目依赖的另一个项目无法编译,因为它无法清理,因为Eclipse想要删除整个项目中的.svn目录(我不知道为什么),并且它不能因为某些项目文件没有写入权限.我很高兴消除所有.svn数据只是为了让这个工作!谢谢你的提示. - user690075 2011年9月7日在1:25
这个问题没有得到足够的重视.
这个问题一直在浪费我的时间.
如果OP的答案没有解决您的问题,您应该在新帖子上提出更具体的问题,描述您的尝试以及OP的解决方案如何解决您的具体问题.
话虽这么说,假设您尝试了OP发布的解决方案,可能会出现另一个问题(不是由删除类文件引起的)导致相同的错误.因为你开始对别人的问题赏金,你不能让你的声望后,我认为这将是适当的提它可能是值得你的时间,以确保你的JDK版本(S)是使用旧的或外部的源代码之间的兼容在你的项目中.NoClassDefFoundError当编译器到达代码中引用在不兼容的JDK上开发的库中定义的对象/类的点时,您将得到相同的错误,它缺少在JDK版本中找不到的关键内部依赖项.
我会详细介绍,但由于这个问题是关于删除类文件时出现的错误,我觉得这样做是不对的.
您确定该源文件位于您项目的源集中吗?因为在这种情况下 Eclipse 只会编译并将其放入您的类路径中。右键单击Package Explorer中的项目,Properties -> Java Build Path -> Source。封闭的文件夹应该在那里,否则 Eclipse 将不会编译它。
比如说,您的这个源文件曾经在源集中并且经过编译,这可以解释为什么它在您删除二进制文件之前一直在工作。
为了避免出现此问题,我建议在项目菜单中的Java -> 编译器 -> 自动构建和构建...中选择清理项目时,使用 Scrub 输出文件夹。
还要确保您的项目编译/构建成功,否则 Eclipse 可能无法编译所有类。
如果仍然没有帮助,那么您遇到问题的项目类型可能很重要:Java 项目、Maven 项目、Gradle 项目等。
| 归档时间: |
|
| 查看次数: |
10572 次 |
| 最近记录: |