【问题标题】:Eclipse: Is there a way to force an import in Organize Import to solve an ambiguity?Eclipse:有没有办法在 Organize Import 中强制导入来解决歧义?
【发布时间】:2011-07-23 09:58:06
【问题描述】:

我在一个 android 项目上使用 Eclipse。我更新到 Lion 并开始出现问题......尝试了几个小时,没有结果。

问题出在这里:

我的项目中有几十个文件com.stuff.morestuff。 我想 crtl+shift+O 我的项目,以便解决每个导入。 但是,在每个文件上,eclipse 都会要求我解决歧义。

因此,我想强制eclipse选择第一选择。

一些线索

1 - 我试图在构建路径中制定规则,但它太强大了。 例如:如果我从构建路径中排除 android.R,那么它不会出现在选项中,但我不能在我的代码中明确使用它......

2 - 手动操作 —> 长

3 - 我尝试配置组织导入工具,但没有成功。

感谢您的回答!

【问题讨论】:

  • “解决歧义”是什么意思?它是否询问您有关具有相同非限定名称的类(例如:java.util.Datejava.sql.Date)?我无法想象你会有“几十个文件”会遇到这个问题,除非你决定手动删除所有现有的导入(或者只是编写代码而不费心让它编译)。如果你这样做了,那么你就学到了宝贵的一课。
  • :-) 亲爱的主不...我不知道为什么,但 Eclipse “喜欢导入 android.R”(在 google dev 上看到)。这很痛苦:它隐藏了你的 R 文件。我删除了它们,当我想导入我的 R 文件时,问题就出现了。它出现是因为我使用 greendroid lib 有自己的 R 文件...

标签: java eclipse


【解决方案1】:

您可以使用“首选项 > Java > 外观 > 类型过滤器”。为您不想使用的类型创建过滤器。例如。如果您对 java.awt 包中的类型不感兴趣,可以为整个包创建过滤器,也可以过滤掉单个类型。

过滤的类型然后从 UI 中隐藏,即它们不用于组织导入或显示在“打开类型”对话框等中。请注意,编译器仍然可以看到这些类型,这与摆弄构建路径不同,后者将对编译器隐藏类型。

【讨论】:

  • +1:这也是我的建议。这样,您可以过滤掉您从未使用过的整个包或单个类,例如 java.awt.List 或 java.sql.Date。您仍然可以通过手动插入 import 语句直接将这些类导入文件中。
  • 就在这里...我现在感觉有点傻:-)!嗯,谢谢!
  • +1 这用 java.sql.Date 和 java.awt.List 治愈了我的慢性疼痛,欢迎其他常见建议。
  • @ChristopheRoussy 又过了 2 年,同样的药物治疗同样的疼痛:D
猜你喜欢
  • 2019-06-12
  • 2013-04-14
  • 2021-02-04
  • 1970-01-01
  • 1970-01-01
  • 2021-05-28
  • 1970-01-01
  • 2022-01-06
  • 2011-06-04
相关资源
最近更新 更多