有没有办法让多模块maven项目列出它部署的工件的组/工件ID?

时间:2017-05-17 21:29:37

标签: maven maven-2 maven-3

我正在整理通用脚本以支持许多不同Maven项目的CI管道(其中许多是多模块项目)。

我想编写一个Bash脚本,它将对任何给定版本部署的组ID,工件ID和工件(JAR / WAR)进行编目。但是,我很难确定如何以万无一失的方式获取这些信息。

maven是否支持检索此信息?

1 个答案:

答案 0 :(得分:1)

您可以使用maven-deploy-plugin的日志。

要获取artifactId,请使用以下行:

[INFO] --- maven-deploy-plugin:2.7:deploy (default-deploy) @ artifact-id ---

其他东西:

[INFO] Uploaded: path-to-artifactory/group-id-path/artifact-name/path-to-jar-artifact/artifact.jar
在所有情况下,

path-to-artifactory保持不变。由于您也知道artifact-name,因此您可以获得group-id-path。然后将/\\(无论文件分隔符)替换为.。例如,com/company/something/group1会将groupId视为com.company.something.group1

您还将知道上传文件的名称及其相对于工件位置的位置path-to-jar-artifact