我对 Eclipse 3.6 (Helios) 有疑问:
serialVersionUID
每当我想为扩展类的类生成序列版本 ID ( ) 时serializable
,我都会收到以下消息:
发生以下错误:找不到类文件。确保文件是可编译的。
我究竟做错了什么 ?
谢谢你。
就我而言,我通过以下方式解决了这个问题:
右键单击项目,“构建路径”->“配置构建路径”->“源”选项卡,删除标记为“缺失”的路径。
有时,一个工具(例如 AspectJ - AJDT 或其他工具)会删除项目的 Java 特性,并且它不会编译,而它不会在编辑器上显示任何错误。
检查您是否有一个包含两个条目的 .project 文件: org.eclipse.jdt.core.javabuilder和org.eclipse.jdt.core.javanature
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>Myproject</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<!-- This one is required -->
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.wst.common.project.facet.core.builder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.wst.validation.validationbuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.m2e.core.maven2Builder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
<nature>org.eclipse.m2e.core.maven2Nature</nature>
<!-- This one is required too -->
<nature>org.eclipse.jdt.core.javanature</nature>
<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
</natures>
</projectDescription>
有一个错误问题:https ://bugs.eclipse.org/bugs/show_bug.cgi?id=259506
除了修改 .project 文件,正如 Marc 所说,Andrew Eisenberg 建议尝试再次关闭和打开项目。
在我的情况下使用两者都有帮助。
编辑: 前段时间我使用集成的 AspectJ 开发工具迁移到 eclipse。从那时起,我对 aspectJ 有了可用的选项,这些选项每次都有效。
如果您有任何构建问题(错误),eclipse 会给出
Could not find class file. Make sure the file is compilable.
错误。确保它们与您的构建路径没有问题(例如... Missisng class folder/jars )。
Eclipse 使用org.eclipse.jdt.core.javabuilder
-Builder 来定位 -Files .class
。但要么 Builder 没有启动,要么没有找到.class
-files。
.project
将-File减少到
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>yourprojectsname</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>
删除所有 Maven 的构建路径条目。
添加Maven性质。
就这样。
去:
Window > Show View > Other..
选择:
General > Problems
您可以看到所有包含 jar 依赖项的 Eclipse 问题。我的问题是我缺少所需的 jar 文件。一旦我添加了那个 jar 文件,问题就得到了解决。
在我的情况下,我也使用过,
右键单击项目,“构建路径”->“配置构建路径”->“源”选项卡,删除标记为“缺失”的路径。尽管我不确定它是否会影响项目对任何事物的依赖。
就我而言(我使用的是 Maven),我不得不删除本地存储库中的一个依赖项,因为它已损坏。查找有关读取依赖 jar 的问题的错误。
检查自动构建是否打开。生成串行版本 UID 需要类文件。如果没有构建项目并重试。
就我而言,我的 Eclipse 工作区中有多个项目。解决方案是首先修复所有当前项目的错误,然后转到“问题”视图并修复或删除那里的所有错误。
现在,如果您重新执行 Eclipse 快速修复“添加生成的序列版本 ID”,它应该可以正常工作。
我有同样的问题。这对我有用:
尝试再次生成序列版本 ID