【发布时间】:2015-02-02 22:13:05
【问题描述】:
在我的 maven 项目中,我使用 pgp 插件对我的 jar 进行签名。我只在部署到远程仓库时才需要这样做,而不是在安装到本地仓库时。所以我尝试设置部署阶段。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>1.1</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>deploy</phase>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
使用该配置,maven 首先部署到远程 repo,然后签署我的 jars...
我读到插件是按照它们在POM文件中定义的顺序执行的,所以我尝试在签名插件之后配置deploy-plugin,但是没有任何效果
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>1.1</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>deploy</phase>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.8.2</version>
<executions>
<execution>
<phase>deploy</phase>
<goals>
<goal>deploy</goal>
</goals>
</execution>
</executions>
</plugin>
如何实现签名插件不是在安装时执行,而是在上传工件之前部署时执行?我正在使用 maven3。
【问题讨论】:
-
听起来有点棘手......本地安装和远程部署的工件不应该是相同的吗?