【问题标题】:How do I hide .class files from the Open Resource dialog in Eclipse?如何在 Eclipse 的“打开资源”对话框中隐藏 .class 文件?
【发布时间】:2011-02-07 14:42:25
【问题描述】:

我不想编辑任何工作集。我只是想要一种方法,在所有工作区和项目中,防止 .class 文件永远显示在“开放资源”对话框中。有没有办法做到这一点?

【问题讨论】:

  • 答案太旧了。我正在使用 eclipse neon,这对我有用:pujansrt.blogspot.com.tr/2013/04/…
  • 在 Eclipse Oxygen.2 中,此处显示的解决方案不会更改 Maven 导入项目的打开资源对话框的行为,在目标文件夹上选中或取消选中“派生”:*.类文件仍然可供选择。

标签: java eclipse


【解决方案1】:

一种选择是过滤派生资源。在“打开资源”对话框的右上角有一个箭头,您可以单击以调出用于过滤的下拉菜单。如果选中,请取消选中“显示派生资源”选项。

如果您仍然看到“.class”文件,它们可能没有被标记为派生。如果它们自己位于自己的文件夹层次结构中,您可以通过右键单击根文件夹以编辑文件夹属性并选中“派生”复选框来解决此问题。如果它们与您的“.java”文件混合在一起......运气不好,您需要手动设置每个“.class”文件的派生属性。

据我所知,没有办法将类文件标记为工作区的全局派生资源,但我相信当您创建一个新的 Java 项目时,“bin”文件夹默认标记为派生(如果您使用默认向导设置)


以下是 Eclipse Kepler 的一些屏幕截图。第一个显示如何通过取消选中“打开资源”对话框中的“显示派生资源”来过滤派生资源。第二个展示了如何在资源上设置 'Derived' 属性。

【讨论】:

  • 我知道有办法做到这一点。我已经在几个项目上设置了这个,但是当我导入一个新项目时,.class 文件又出现了。只需检查所有“目标”文件夹并将其标记为派生。完美。
  • 请注意,Indigo 中似乎缺少“显示派生资源”框。幸运的是,确保将包含 .class 文件的文件夹设置为派生(按照上面的说明)似乎可以正确隐藏不需要的文件。
  • 我打开.class 文件试图找到它的文件夹,所以在将其标记为派生后它仍然出现。我必须右键单击它并标记“从历史记录中删除”才能让它消失。
  • 这行得通,但对我来说完全相反。当我选中“显示派生资源”时,.class 文件未显示在搜索列表中。奇怪。有没有人看到这种相反的行为?
  • 不适用于多模块 maven eclipse 项目
【解决方案2】:
  1. 右键单击项目并选择Properties
  2. 展开Resource并点击Resource Filters
  3. 点击添加过滤器...创建一个新过滤器
  4. 在打开的对话框中
    1. 选择排除所有文件单选按钮
    2. 文件和文件夹属性下输入*.class
  5. 单击确定

排除整个目录层次结构,例如target 目录,选择 Files and folder 单选按钮和 All children (recursive) 复选框。

编辑

排除以下内容以完整清理Open Resource 对话框

  1. 文件 *.class
  2. 文件夹箱
  3. 文件夹构建
  4. 文件夹目标

如果不排除所有 4 则它不起作用。

【讨论】:

  • @dips - 使用带有星号的*.class 来匹配所有类文件。
  • 递归复选框让我印象深刻,默认禁用该行为有点违反直觉。
  • 这对我来说比接受的答案更好。非常感谢
  • 可以确认这是有效的,很棒的收获!这与我的解决方案的主要区别在于,此解决方案还隐藏了所有资源视图中的 .class 文件,例如 Package Explorer 和 Navigator。根据您的需求和偏好,这可能对您有更好或更差的效果。
【解决方案3】:

要更改此行为并隐藏“.class”文件,您需要执行以下操作。

  1. 在“项目资源管理器”窗口中找到您的类输出文件夹。对于 Maven 项目,这通常称为 bintarget

  2. 右键单击此文件夹并单击属性

  3. 勾选Derived复选框(不选中)并点击OK

.class 文件现在将在未来隐藏。

来源:http://ayubmalik.co.uk/2011/12/hide-class-files-when-opening-a-type-or-resource-in-eclipse-ide/

【讨论】:

  • 同意,这是最好的解决方案。从资源中排除类文件会导致运行时出现类未找到异常。
  • 您还需要取消选中顶部答案中列出的“显示派生资源”才能正常工作。你们两个一起有一个完整的答案。
  • 要查看 Oxygen 中的类输出文件夹,您可能必须取消选中项目管理器过滤器和自定义项中的“Java 输出文件夹”(单击右上角的向下箭头)。
  • 完美解决方案
  • 目标文件夹中的文件是派生的。所以你必须对 Eclipse 撒谎才能让开放资源正常运行?
【解决方案4】:

您可以使用Working sets。从打开资源对话框上的the same dropdown menu 中选择Select working set。它会打开工作集对话框,如果您还没有工作集,您可以在其中创建它们。

创建新文件夹时,选择类型Resources 并选择工作区中的哪些文件夹被视为搜索或打开资源的候选者。我只包含了srctest 文件夹,通常还有pom.xml 和其他杂项配置文件。

我正在处理的几个大型项目对搜索速度也有显着影响。

【讨论】:

  • +1 谢谢,使用Derived 解决方案对我来说不可行,文件夹太多
【解决方案5】:

要全局解决这个问题(在所有项目上),按下ctrl + shift + r后,点击窗口右上角的三点按钮,然后点击 Select Working Set勾选 Java Main SourceJava Test Source 瞧。

【讨论】:

  • 很棒的提示!为我工作
【解决方案6】:

Eclipse Luna - 只需转到以下链接 http://help.eclipse.org/luna/index.jsp?topic=%2Forg.eclipse.platform.doc.user%2Ftasks%2Ftasks-48b.htm

1. 创建工作集(包括所有项目)
2. 在“包资源管理器”面板上单击“过滤器”(在您刚刚创建工作集的同一菜单中)并取消选择“内部类文件”+单击确定

这对我有用

【讨论】:

    【解决方案7】:

    有时您无法将 build 或 bin 文件夹标记为派生资源,因为 eclipse 包资源管理器或项目资源管理器不会在项目视图中显示 build 或 bin 文件夹。

    你需要做什么,在项目视图中显示构建文件夹:

    1. 转到 Project > Properties > Java Build Path > Source > 将默认输出文件夹更改为 build1 注意:它会要求您删除旧文件夹及其内容,按否(稍后恢复)

    2. 现在构建文件夹在包资源管理器中可见,转到文件夹属性并将其标记为派生

    3. 现在将默认输出文件夹改回 build(以恢复旧设置)

    【讨论】:

      【解决方案8】:

      3.5 版 打开资源对话框可以通过右上角的小下拉菜单打开/关闭“显示派生资源”。关闭它会隐藏类。

      或者

      您可以在“选择要打开的项目”文本框中键入表达式,例如:*.java


      【讨论】:

        【解决方案9】:

        在 Project Explorer 视图中显示或隐藏文件 您可以选择在导航视图之一中隐藏系统文件或生成的类文件。 (系统文件是那些只有文件扩展名但没有文件名的文件,例如.classpath。)

        在项目浏览器的工具栏上,单击菜单按钮菜单 按钮打开显示选项的下拉菜单。选择自定义 查看..,.

        在打开的对话框中,选择过滤器选项卡,然后选择 要隐藏的文件类型的复选框。在 此外,您可以将显示的文件限制为工作集。

        在 Project Explorer 的工具栏上,单击 Menu 按钮 Menu 按钮以打开显示选项的下拉菜单。 选择选择工作集... 从列表中选择一个现有的工作集或通过选择 NEw 创建一个新的 check here

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2010-09-18
          • 2011-08-23
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多