IDEA:如何跨模块移动Java类

Den*_*gin 6 java maven

跨 Maven 模块移动类确实很痛苦。有两个原因:

  • 你必须更新 Maven deps;
  • 你的进口坏了。

我通过以下方式修复这两个问题:

  1. 手动更新所有损坏的部门。
  2. 在项目范围内查找/替换导入文本。

看起来不太方便(事实上也不是),也不像 2015 年的开发流程。有没有一种方法可以更轻松地跨 Maven 模块移动 Java 类?

vik*_*eve 2

我正在使用 IntelliJ,这两个步骤都可以由 IDE 以相反的顺序自动完成。

首先,对于步骤 2 -修复导入:

只需将类从源包拖放到另一个 Maven 模块中的目标包,您就会看到“移动”选项窗口。

确保To package正确且Target destination directory是有效的源根目录(单击Refactor)。

应该更新使用该类的所有导入。

现在,第 1 步-更新 Maven deps

需要在使用该类的每个 Maven 模块中重复此步骤。

转到模块中使用该类但没有属性 maven 依赖项的类,找到标记为red的类名的用法。

用于altenter弹出修复列表并选择最后一个选项:添加 Maven 依赖项...,然后选择类移动到的 Maven 模块。

或者,您可以手动更新 pom.xml。

最后,进行完整的 Maven 构建。