在 maven 中重命名 groupId

2022-09-01 19:36:15

我正处于多模块Maven3项目的重构和后台管理过程中,我需要重命名一些工件的groupId和artifactId。

有没有办法同时重命名 groupId 和 artifactId?
我知道我可以使用一些像sed这样的查找和替换工具,但我想知道是否有像 versions-maven-plugin(例如:)这样的mojo,但对于groupId和artifactId。mvn versions:set -DnewVersion=1.0.3-SNAPSHOT


答案 1

有没有办法同时重命名 groupId 和 artifactId?

截至今天,您的问题的答案很简单:

  • 不,没有这样的重命名插件。

编写您自己的 Maven 插件

不过,我想你也许能够写出这样一个maven插件。

您可以在 Mojo 中包含此字段:

    @Parameter(defaultValue = "${project}", readonly = true)
    @SuppressWarnings("UnusedDeclaration")
    private MavenProject project;

该类具有您要查找的方法(等)。MavenProjectsetArtifactId

实际上,来自maven版本插件的SetMojo将为您做到这一点。


一旦有这样的插件,这个答案就会更新。


答案 2

这是我所知道的唯一方法。

首先创建并根据您要在 pom 中指定的新 groupId 移动所有 java 源代码。将项目文件夹重命名为新的工件 Id。根据新的工件 Id 更新 .project 文件。

现在右键单击eclipse中的项目并进行更新maven项目。如果它更新没有任何错误,你很高兴去。


推荐