我有一个由其他人创建的项目,其中包含成千上万个类文件,并且为每个对其类的引用都显式键入了包名。看起来代码是反向工程的。Java是否有一个很好的工具来重构代码,以便从类引用中删除显式键入的包前缀,并将其移入import语句。
先感谢您。
编辑:
我认为一个例子会有所帮助。我想把进口放在最前面,我不在乎有多少进口。
javax.swing.JButton button1 = new javax.swing.JButton();
想象上面的代码,但绝对可以在数千个类文件中的成千上万行代码中的任何地方。我希望能够删除所有前缀,并且只需导入javax.swing.JButton就可以了;在每个类文件的顶部。
我不知道用于这种用例的工具,但是几个月前我不得不做类似的事情。
编写脚本或使用正则表达式进行搜索替换,以摆脱显式键入的包前缀。
让eclipse使用“组织进口”来完成其余的工作。Ctrl-1
提示:为避免歧义,请使用不超过所需库的类路径来设置类路径。我花了2个小时完成了大约800堂课。
编辑:您应该知道,在Prefeneces / Java / Editor / Save Actions中,可以将Organize导入配置为save动作。
问题内容: 有人可以向我解释该声明的工作方式吗? 例如,我在包中有一个类型: 我的包裹中有一个类型: 这给了我以下错误: 我试图将导入更改为以下代码: 但是得到这个错误: 我也不明白。那么,和之间有什么区别?如何正确设置我的模型? 问题答案: 每个包都有一组类型,函数,变量等。我们将它们称为 实体 。每个实体可以导出(名称以大写字母开头),也可以不导出(名称以小写字母开头)。 一个包只能访问另一个
在第一部分,我描述如何使用包装类彻底简化代码编写。 例如,我们要在找到所有类型为“工人”,并为女性的蚂蚁。编写SQL语句是很容易的: 我们想用Android的代码来写这一点,SQL数据转换成有用信息: String[] args = new String[2]; args[0] = "worker"; args[1] = "0"; Cursor cursor = db.rawQuery("SELE
我有一个简单的问题。 你能在testng中的依赖项中使用“或”语句吗? 例如,我有我的test1 这可能吗?
问题内容: 我正在尝试将plpgsql编写为以下形式的函数(请注意,这是简化版本): 失败的部分是生产线。如何基于变量表名称声明类型?还是我需要以某种方式进行投射? 像这样的东西可以正常工作,但是如果我使用像这样的变量名: 问题答案: 重要的是要了解这五种 不同类型的数据/符号 的主要性质: 1。 类型为的字符串文字。在SQL中使用时(是否嵌入在plpgsql代码中),它被强制转换为从 conte
问题内容: 我有以下文件 和第二个文件 运行文件将提供正确的输出。 现在在第二个文件中,我只是导入函数而不是类,尽管成功执行函数也需要类。 导入函数时,Python会自动导入运行该函数所需的其他所有内容,还是会自动在当前目录中搜索类? 问题答案: 正如@DavidZ已经提到的,当我们导入它时,整个Python文件都会被编译。但是,当解析函数体时,另一件事发生了,函数知道应该在局部作用域中查找哪些变
问题内容: 给出如下结果 但是我需要从输出中删除xml声明,我该怎么做 问题答案: 您是否看到了Transformer使用的OutputKeys?特别是OMIT_XML_DECLARATION。 请注意,删除标头在XML 1.0中有效,但是会丢失字符编码数据(尤其如此),这可能非常重要。