繁体   English   中英

IntelliJ或Eclipse将方法的所有用法重构为不同类/接口上的方法

[英]IntelliJ or Eclipse refactoring all usages of a method to a method on a different class/interface

在我们的代码库中,Java类com.company.session.old.SessionContext的使用方式如下(大约1k用法):

import com.company.session.old.SessionContext;

...
SessionContext ctx = SessionContext.create();

我想将其迁移到新的实现中,其内容为:

import com.company.session.SessionContext;
import com.company.session.SessionContextManager;

...
SessionContext ctx = SessionContextManager.instance().create();

导入易于通过全文本搜索和替换来迁移。 实际的调用SessionContext.create(SessionContextManager.instance().create(的迁移也可以通过这种方式完成。现在的问题是,这将导致SessionContextManager 不被导入,并且需要打开所有这些文件进行替换以自动-组织进口。

IntelliJ或Eclipse是否提供功能来搜索方法的所有用法,而不是通过纯文本搜索而是通过某种代码处理机制将其替换为完全不同的方法?

在IntelliJ IDEA中,执行此重构的最简单方法是更改SessionContext.create()的实现,以便它调用SessionContextManager.instance().create() ,然后内联该方法。 您可以在内联更新所有用法后恢复旧的实现。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM