为什么Eclipse在非源文件夹中构建源代码?

时间:2011-08-15 13:35:18

标签: java eclipse build

我刚刚建立了一个新的Eclipse Java项目。在这个项目中,我包含了一个名为external的文件夹,包含诸如jar之类的东西,以及这些jar的来源。项目中的唯一源文件夹是空的src/文件夹,external/文件夹和external/文件夹的任何子目录都没有标记为源文件夹。< / p>

尽管如此,Eclipse选择编译(并阻塞)位于external/文件夹下的源文件。有人知道为什么会这样做,以及如何阻止它试图编译这些文件?

更新

文件层次结构为:

project/
    src/ (Marked as source folder)
    bin/
    external/ (Linked folder, not marked as source folder)

右键单击项目,选择New - &gt;创建external/文件夹。文件夹,单击高级并选择“链接到备用位置”。然后我提供了一个到我的源层次结构之外的文件夹的相对路径。

我在其他几个项目中配置了这个external/文件夹,没有任何问题。

解决方案

代码根本没有编译,Eclipse在external/目录中的源文件中标记了警告和错误,因此我假设Eclipse尝试编译这些源代码。但是,我的checkstyle插件在Eclipse中添加了警告/错误。默认情况下,它解析启用它的项目中所有目录中的源文件。

因此,解决方案是指示checkstyle仅分析在源文件夹中标记的文件夹中的源。

感谢您的帮助。

2 个答案:

答案 0 :(得分:2)

您可以通过右键单击文件夹,突出显示“构建路径”,然后选择“用作源文件夹”或“从构建路径中删除”来切换哪些文件夹包含要编译的Eclipse代码。从构建路径中删除的任何文件夹都只会将任何.java源显示为文本文件。

答案 1 :(得分:0)

请记住,Eclipse的文件系统与您的实际文件系统不同步。要让Eclipse知道项目目录中存在一个文件夹,您必须单击并将其拖到Eclipse中的项目视图中。