将Java项目导出为.jar文件会抱怨找不到某些.java文件

dev*_*ium 10 java eclipse

当尝试将项目导出为.jar文件时,Eclipse会抱怨在类路径上找不到某些文件:

类路径上的类文件未找到或无法访问:'proj/src/main/java/analysis/specification/VerifyVariableIsDefinedInsideTargetTerm.java'

现在,有趣的是,这些文件实际上并没有存在于磁盘上多年.我想我必须以某种方式强迫Eclipse刷新它的数据库.我已经尝试过做F5和完整版本,但似乎无济于事.我也尝试过这篇博客文章中描述的程序,但问题仍然存在.

dev*_*ium 12

呃..我实际上在几分钟之前绊倒了问题的原因..

所有引发问题的文件确实存在于项目中,但已被注释掉(因此,我没有在包浏览器中看到它们,这是我通常使用的视图).

删除后,一切都很顺利.我仍然不明白为什么他们会在JAR创建过程中引发错误,但是..

编辑: 这是一个注释掉的类的示例:

package a.b.c

//import java.io.Closeable;

//public class Example implements Closeable {
//    public void close() throws IOException {
//        System.out.println("closed");
//    }
//}
Run Code Online (Sandbox Code Playgroud)

因为整个类已注释掉,所以不会创建Example.class.如果该类被注释掉如下:

package a.b.c

//import java.io.Closeable;

public class Example
//    implements Closeable
{
//    public void close() throws IOException {
//        System.out.println("closed");
//    }
}
Run Code Online (Sandbox Code Playgroud)

然后创建Example.class,尽管是空的.

这可能是日食中的一个错误.如果从eclipse导出ant构建脚本并使用它,它就可以很好地创建jar.