我正在整理通用脚本以支持许多不同Maven项目的CI管道(其中许多是多模块项目)。
我想编写一个Bash脚本,它将对任何给定版本部署的组ID,工件ID和工件(JAR / WAR)进行编目。但是,我很难确定如何以万无一失的方式获取这些信息。
maven是否支持检索此信息?
答案 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
。