Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Eclipse:无法生成串行版本ID_Java_Eclipse - Fatal编程技术网

Java Eclipse:无法生成串行版本ID

Java Eclipse:无法生成串行版本ID,java,eclipse,Java,Eclipse,我对Eclipse3.6(Helios)有一个问题: 每当我想要为扩展可序列化的类的类生成串行版本ID(serialVersionID)时,我都会收到以下消息: 发生以下错误:找不到类文件。确保 该文件是可编译的 我做错了什么 谢谢。有时候一个工具(例如AspectJ-AJDT或其他工具)会删除项目的Java特性,并且它不会编译,同时也不会在编辑器上显示任何错误 检查是否有包含以下两个条目的.project文件: org.eclipse.jdt.core.javabuilder和org.ecli

我对Eclipse3.6(Helios)有一个问题:

每当我想要为扩展可序列化的类的类生成串行版本ID(
serialVersionID
)时,我都会收到以下消息:

发生以下错误:找不到类文件。确保 该文件是可编译的

我做错了什么

谢谢。

有时候一个工具(例如AspectJ-AJDT或其他工具)会删除项目的Java特性,并且它不会编译,同时也不会在编辑器上显示任何错误

检查是否有包含以下两个条目的.project文件: org.eclipse.jdt.core.javabuilderorg.eclipse.jdt.core.javanature


我的项目
org.eclipse.jdt.core.javabuilder
org.eclipse.wst.common.project.facet.core.builder
org.eclipse.wst.validation.validationbuilder
org.eclipse.m2e.core.maven2Builder
org.eclipse.wst.common.modulecore.ModuleCoreNature
org.eclipse.m2e.core.maven2Nature
org.eclipse.jdt.core.javanature
org.eclipse.wst.common.project.facet.core.nature

在我的例子中,我通过以下方式解决了这个问题:


右键单击项目“构建路径”->“配置构建路径”->“源”选项卡,删除标记为“缺少”的路径。

如果您有任何构建问题(错误),eclipse将给出

找不到类文件。确保该文件是可编译的。

错误。确保它们与您的构建路径没有问题(例如…missing class folders/jar)。

Eclipse使用
org.Eclipse.jdt.core.javabuilder
-Builder查找
.class
-file。但是生成器没有启动或者没有找到
.class
-文件

.project
-文件缩减为


你的项目就是我
org.eclipse.jdt.core.javabuilder
org.eclipse.jdt.core.javanature
删除maven的所有构建路径条目

添加Maven特性

仅此而已。

存在一个错误:

除了如Marc所述修改.project文件外,Andrew Eisenberg建议再次尝试关闭和打开项目

在我的情况下,使用这两种方法都有帮助

编辑: 不久前,我使用集成的AspectJ开发工具迁移到eclipse。从那时起,我就有了aspectJ的可用选项,每次都可以使用

检查是否启用了自动生成。
生成串行版本UID需要类文件。如果没有,请构建项目并重试。

在我的情况下,我也使用

右键单击项目“生成路径”->“配置生成路径”->“源”选项卡,删除标记为“缺少”的路径。
虽然我不确定它是否会影响项目在任何事情上的依赖关系。

在我的例子中,我的eclipse工作区中有多个项目。解决方案是首先修复当前项目的所有错误,然后转到“问题”视图并修复或删除其中的所有错误


现在,如果您重新执行eclipse快速修复程序“添加生成的串行版本ID”,它应该可以正常工作。

在我的情况下(我使用的是Maven),我必须删除本地存储库中的一个依赖项,因为它已损坏。查找有关读取依赖项jar的问题的错误。

我也有同样的问题。这对我起了作用:

  • 转到选项卡导航器:窗口>显示视图>导航器
  • 右键单击项目
  • 建设项目
  • 再次尝试生成串行版本ID

    转到:

    窗口>显示视图>其他..

    选择:

    常规>问题


    您可以看到所有Eclipse问题,其中包括jar依赖项。我的问题是缺少一个必需的jar文件。一旦我添加了jar文件,问题就解决了。

    我认为eclipse无法生成serialversionUID,因此无法在那里编译类文件。检查是否存在任何与java相关的生成错误!。。aspectj有这个问题吗?每次answear帮助我时,我都会增加这个数字:2这确实有助于找到确切的问题。谢谢