18

我对 Eclipse 3.6 (Helios) 有疑问:

serialVersionUID每当我想为扩展类的类生成序列版本 ID ( ) 时serializable,我都会收到以下消息:

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

我究竟做错了什么 ?

谢谢你。

4

11 回答 11

16

就我而言,我通过以下方式解决了这个问题:

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

于 2013-10-29T08:31:18.267 回答
5

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

检查您是否有一个包含两个条目的 .project 文件: org.eclipse.jdt.core.javabuilderorg.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>
于 2013-09-28T21:32:49.523 回答
3

有一个错误问题:https ://bugs.eclipse.org/bugs/show_bug.cgi?id=259506

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

在我的情况下使用两者都有帮助。

编辑: 前段时间我使用集成的 AspectJ 开发工具迁移到 eclipse。从那时起,我对 aspectJ 有了可用的选项,这些选项每次都有效。

在此处输入图像描述

于 2015-10-19T07:11:41.600 回答
2

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

   Could not find class file. Make sure the file is compilable.

错误。确保它们与您的构建路径没有问题(例如... Missisng class folder/jars )。

于 2014-09-03T15:39:27.400 回答
2

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性质。

就这样。

于 2015-02-23T10:21:33.397 回答
1

去:

Window > Show View > Other..

选择:

General > Problems

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

于 2018-10-31T21:53:13.387 回答
1

在我的情况下,我也使用过,

右键单击项目,“构建路径”->“配置构建路径”->“源”选项卡,删除标记为“缺失”的路径。尽管我不确定它是否会影响项目对任何事物的依赖。

于 2016-02-02T14:34:15.660 回答
0

就我而言(我使用的是 Maven),我不得不删除本地存储库中的一个依赖项,因为它已损坏。查找有关读取依赖 jar 的问题的错误。

于 2016-11-26T23:25:22.170 回答
0

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

于 2016-01-06T07:11:07.327 回答
0

就我而言,我的 Eclipse 工作区中有多个项目。解决方案是首先修复所有当前项目的错误,然后转到“问题”视图并修复或删除那里的所有错误。

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

于 2016-04-27T10:33:19.083 回答
0

我有同样的问题。这对我有用:

  1. 转到选项卡导航器:窗口 > 显示视图 > 导航器
  2. 右键单击项目
  3. 构建项目

尝试再次生成序列版本 ID

于 2018-05-15T18:49:50.137 回答