2
我有一個多模塊項目,其中父POM指定(在配置文件中)配置和使用maven-jarsigner插件簽署項目產生的罐子。如何確保在包裝階段簽署測試罐?
<profile>
<id>sign</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jarsigner-plugin</artifactId>
<version>1.2</version>
<executions>
<execution>
<id>sign-jars</id>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
<configuration>
<keystore>/tmp/certificates.ks</keystore>
<alias>jarsign</alias>
<storepass>password</storepass>
<keypass>password</keypass>
</configuration>
</plugin>
</plugins>
</build>
</profile>
一些項目的子模塊的額外使用maven-JAR-插件生產試驗瓶:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<executions>
<execution>
<id>test-jar</id>
<phase>package</phase>
<configuration>
</configuration>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
</plugin>
我觀察到當簽名文件中啓動(例如,
- 罐子:罐子
- 的jarsigner:簽署 ,
- 罐子:測試-JAR
- 安裝:安裝
mvn -Psign install
)Maven的按以下順序執行目標
這將導致一個無符號的測試-JAR(無論是在target/
和本地資源庫),然後使Java安全問題時,後續的項目嘗試使用那個測試罐。
有沒有辦法確保jar:jar和jar:test-jar在jarsigner之前執行:sign?
現在,我將簽名綁定到安裝階段。這聽起來像是這類問題在Maven中很常見,而且Maven開發人員社區是否真的認爲它是一個錯誤還不清楚......請參閱http://jira.codehaus.org/browse/MNG -2258和許多相關的相關問題。當然,它似乎沒有系統地解決: - / – 2010-11-28 04:50:45