13

Eclipse 中是否有任何设置仅显示文件所在的 Maven 项目?

我有不同的 Maven 项目,它们是父 Maven 项目的模块:

projParent
   |-projWeb
   |-projModel
   |-projServices
   |-...

如果我在 Eclipse 中使用“Open Resource”(使用Ctrl + Shift + r)查找文件,它会出现在许多项目中(例如:在 projParent 和 projWeb 中)。

有没有办法只显示该文件实际所在的相关文件夹?

4

3 回答 3

20

尝试定义一个仅包含您要搜索的模块的工作集,然后在搜索中使用该工作集。

编辑

实际上我试过了,默认情况下它在 eclipse 4.3 (Kepler) 中完美运行,嵌套项目只返回一个结果。

无论如何,这里是如何在开放资源中使用工作集(该示例不是嵌套模块中的资源,因为在这种情况下,Kepler 不会显示重复的结果;因此该示例只是两个不同的资源在两个中具有相同的名称不同的模块):

(1) 按ctrl+shift+R键。我搜索了一个名为pom.xml. 你可以看到两个结果:

开放资源没有工作集

(2) 按窗口右上角的小向下箭头并选择Select Working Set...

打开资源选择工作集

(3)检查单选按钮Selected Working Sets并检查所需的项目(在您的情况下为叶子项目):

在此处输入图像描述

(4) 瞧,Open Resource只返回一个结果:

选择工作集后打开资源

于 2013-07-22T21:21:52.657 回答
16

您可能正在谈论父项目与其子模块之间的一种重复。在最新版本的 Eclipse 中(可能从 3.6 开始,并且肯定从 3.7 开始)有一个新选项

菜单窗口 >

Item Preferences >

    Tree item Maven >

       Option : Hide folders of physically nested modules

这不适用于现有项目。您必须(逻辑上)删除它们并重新导入它们

于 2013-07-22T21:40:21.833 回答
0

我只是遇到了同样的问题,对我有用的是Filter Duplicated ResourcesOpen Resource对话框中选择:

打开菜单 启用过滤器

另一个(不相关)有用的功能是在包资源管理器中从父项目中隐藏子模块文件夹。
这可以通过使用Maven modules包资源管理器菜单中的过滤器来完成:
启用 Maven 模块过滤器

使用 Eclipse 2019-06 (4.12.0) 测试

于 2019-10-24T07:03:39.457 回答