为什么eclipse试图编译不在我的构建路径中的文件?

时间:2009-01-19 09:26:22

标签: eclipse

我有一个相当大的项目,其中包含许多通过svn:externals链接的第三方依赖项。这些包括tomcat和blazeDS,它们由我们的安装程序通过ant打包。问题是这些项目包含许多示例JSP页面,并在尝试构建项目时对它们进行eclipse扼流,产生数百个错误。

我们的项目设置是这样的:

src/
    main/
    test/
third-party/
    blazeDS/
    tomcat/
    etc.

现在,在eclipse中,我的项目的构建路径设置为包含src / main和src / test中的子文件夹。然而,由于某种原因,它仍然试图在第三方之下建立一切。我点击了第三方并选择了“从构建路径中删除”,但这没有任何效果。我甚至尝试将第三方文件夹添加到构建路径,然后排除“”,“ / *”和“** / * .jsp”,但再次没有效果。< / p>

这里发生了什么?

编辑:感谢您的建议,但不幸的是,他们似乎没有解决问题。我没有安装CheckStyle插件(我使用Eclipse 3.4.1,只有自定义插件是subclipse和flex builder),我尝试禁用除Java之外的所有额外构建器,但仍然抛出错误。< / p>

3 个答案:

答案 0 :(得分:2)

我通常在CheckStyle插件中遇到此类问题,您需要在其属性中指定(右键单击项目 - &gt;属性 - &gt; CheckStyle):

“从检查文件中排除非位于源目录中”

否则它会分析(并报告警告/错误)文件,这些文件不是首先编译的候选文件。


其他一些建议:

  • 尝试使用-clean选项重新启动eclipse(eclipse软件版本'你重启了吗?';))。请注意,它可以重置您的工作区透视图,因此您可能希望尝试使用工作区的副本。
  • 尝试删除您的项目(您的项目的工作区参考,而不是其实际内容),并重新导入它(注意您的custom launchers,它们可能会在此过程中被删除)。
  • 检查您是否在src或test中没有任何 linked directory ,这将指向thirdparty(/ **):这将解释不需要的编译。

答案 1 :(得分:1)

可能是您的eclipse项目配置为具有额外的构建器。您可以在项目的属性中检查它(右键单击项目 - &gt;属性 - &gt;构建器)。

答案 2 :(得分:1)

在我的情况下,这是因为在构建路径中的另一个文件中存在对文件的引用(我已从构建路径中排除)。我想从构建路径中排除SegModel.hpp,但在另一个文件中,我指定了template short K::KEstimate<SegModel>(SegModel& m, short stepCode);