停止eclipse在字符串内重命名

时间:2013-08-11 20:57:15

标签: eclipse string replace refactoring rename

我已经有这个问题已经有一段时间了,并且从来没有费心去解决它,因为Eclipse有一个糟糕的帮助系统,我似乎无法找到合适的Google关键字来找到我需要的东西。

我的问题是,当我重构一个类名时,eclipse会查找该名称的所有可能位置并替换它们。

例如,如果我在“list命令”的测试用例中有一个字符串,它表示“List - 列出团队中的所有用户”,当我将List.java类重构为UserListCommand之类的东西时.java,字符串中的表达式也更改为“UserListCommand - 列出团队中的所有用户”

这是SOOO烦人的!就像我说的那样,当你甚至想不到合适的关键词时,谷歌就毫无用处。

还有其他人遇到过这个问题并解决了吗?

提前致谢。

1 个答案:

答案 0 :(得分:3)

Eclipse在注释和字符串中调用此更新文本事件。我有时打开它,所以如果我没有正确链接它,javadoc会正确更新。但它可能会很痛苦,因为它有时会取代匹配的子串。

我在重命名类或接口时只看到了这种情况(方法似乎没有这样做,至少对我来说不是这样),

您需要打开重命名对话框以阻止eclipse更新注释和字符串中的文本事件:

突出显示要重命名的类型,然后:

  1. 按Shift + Alt + R
  2. 右键单击,然后转到refactor->重命名..然后不要输入新名称,现在应该在类名下面有一个黄色的上下文弹出菜单,要显示“输入新名称,按输入重构“,注意有一个向下箭头来展开菜单。如果按此按钮而不是输入新名称,则会出现一个新的下拉菜单,选择打开重命名对话框...
  3. 重命名对话框打开后:

    取消选中“更新评论和字符串中的文本出现(强制预览)”和“更新非Java文本文件中的完全限定名称(强制预览)”

    希望有所帮助