如何使用Java导入语句自动删除显式包声明?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (108)

我有一个由其他人创建的项目,该项目包含数千个类文件,并为每个对其类的引用显式地输入包名。看起来代码是逆向设计的。是否有一个很好的Java工具可以重新调整代码,以便从类引用中删除显式类型化包前缀并移到import语句中。

提问于
用户回答回答于

我不知道这个用例的工具,但几个月前我不得不做一些类似的事情。

  • 编写脚本或使用regex进行搜索替换,以消除显式类型化包前缀。
  • 而不是让Eclipse使用“组织导入”来完成剩下的工作。Ctrl-1
用户回答回答于

对于单个类型,Eclipse提供‘Add import’操作(Shift+Ctrl+M)。它做你想做的事情--有一个很大的限制:你必须把光标放在一个类型上,它只会影响‘选择’的发生。

但是,这个操作可能可以在脚本/全局方法中使用。JDT插件可以在AST中爬行,并对它找到的每个类型调用此操作。

扫码关注云+社区

领取腾讯云代金券