2

我一直在重写代码库,并且一直在尝试在 Eclipse 中删除所有出现的函数及其可能具有的任何参数/参数。

我不追求聪明的正则表达式解决方案或类似的东西,我确定功能会在 Eclipse 中,只是不确定在哪里?:)

非常感谢

只是为了澄清:

这是一个例子......

函数的类 myFoo 不再存在。因为在我到达之前它已经被错误地重构了。因此,我想搜索代码库(通过 Eclipse 工具)并从 myFoo 类中删除任何使用 foo(String string) 方法的行。

4

7 回答 7

1

突出显示对象(方法或变量),然后选择菜单“搜索/引用”或“搜索/声明”。手动进行更改,一次一个,这样您就可以查看每个更改。由于意外后果的可能性很高,我永远不会使用脚本进行广泛的代码更改。

于 2013-01-16T07:39:00.090 回答
0

我会使用编辑菜单中的替换

replace='function name' to '// TODO:'

这将在排水沟上突出显示它们。选择该行并按Ctrl+D删除该行。

于 2013-01-16T07:41:37.803 回答
0

可以选择删除函数本身的主体,然后通过Refactor->Inline?内联它

如果需要,您当然可以保存函数的代码,然后再插入。

于 2013-01-16T07:43:10.017 回答
0

我不知道 JDT 中有这样的功能。但这是您可以使用的自动化解决方案:

使用MoDisco,您可以创建 Java 项目的模型。然后,您可以使用ATL精炼转换来删除该模型中对该方法的所有调用。如果您想替换功能,您甚至可以用其他一些表达式替换调用。

如果您的代码库足够大,那么仔细查看这些 Eclipse 项目可能是个好主意。

于 2013-01-16T07:43:51.277 回答
0

只需在方法名称的开头/中间/结尾键入“MUST_BE_DELETED”或类似的内容(不要使用重命名功能),然后 Eclipse 将在问题窗口中突出显示所有调用它的地方。解决所有问题后,您可以删除该方法。

如果您在 jsp 页面中有代码,那么您将不得不手动搜索这些代码。

于 2013-01-16T07:44:35.320 回答
0

这就是我以前做的:

将光标放在方法名称上,然后按 Control+Shift+g(在 Windows 中),或者您可以执行 Search -> Reference -> Workspace。

这将在工作区中搜索对此方法的所有引用,并手动删除引用


(复制自我的评论)

如果您坚持自动完成“删除”,还有另一种解决方法(可能并不总是有效,取决于情况):

  • 使您的方法主体为空,
  • 然后使用 Refactor -> Inline (你甚至可以选择删除方法声明)

但我相信在某些情况下这种方法不起作用。值得一试,看看它是否适合你的情况

于 2013-01-16T07:45:12.850 回答
-2

使用 ctrl+F 快捷方式打开查找/替换对话框。在“查找”文本框前面的空格中写下您的方法名称。不要在“替换为”文本框中写任何内容。然后按“全部替换”按钮。

这是最快捷的方法。请享用 :)

于 2013-01-16T13:49:18.027 回答