1

我正在使用Assembly插件將一系列applet打包到zip文件中,其中之一是使用我的maven項目。這裏是pom.xml中:在Maven 3中使用帶裝配插件的jarsign插件3

<?xml version="1.0"?> 
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" 
    xmlns="http://maven.apache.org/POM/4.0.0" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 
<modelVersion>4.0.0</modelVersion> 
<packaging>pom</packaging> 
<artifactId>applets-deploy</artifactId> 
<name>deploy</name> 
<dependencies> 
    <dependency> 
    <groupId>com.activx.lims</groupId> 
    <artifactId>applets-common</artifactId> 
    <version>${project.version}</version> 
    </dependency> 
    <dependency> 
    <groupId>com.activx.lims</groupId> 
    <artifactId>ceplot-applet</artifactId> 
    <version>${project.version}</version> 
    </dependency> 
    </dependencies> 
...... 
<build> 
<plugins> 
    <plugin> 
    <artifactId>maven-assembly-plugin</artifactId> 
    <configuration> 
     <descriptors> 
     <descriptor>src/main/assembly/resources.xml</descriptor> 
     </descriptors> 
    </configuration> 
    <executions> 
     <execution> 
     <id>make-assembly</id> 
     <phase>package</phase> 
     <goals> 
      <goal>single</goal> 
     </goals> 
     </execution> 
    </executions> 
    </plugin> 
</plugins> 
</build> 
</project> 

我需要的是還簽署罐包裝之前,我可以在這裏使用jarsign插件,以及如何?我無法找到構建過程中臨時存儲jar文件的位置。 謝謝,

回答

0

這將是一個非常正常的使用jarsigner插件。默認情況下,jar包由jar插件在包階段生成並輸出到${project.build.directory},默認爲target

您只需在封裝過程中和組裝zip之前一段時間對瓶子簽名。您可以通過將程序集插件綁定到稍後階段,或者通過在程序集插件上添加jarsigner插件並將其綁定到程序包階段來實現。

+0

但我需要在jarsigner插件中指定「archiveDirectory」,但我似乎無法找到創建的中間工作目錄,需要對所有需要簽名的jar文件進行壓縮。 – 2012-04-27 18:07:08

+0

你有沒有試過[jarsigner插件的第一個用法示例](http://maven.apache.org/plugins/maven-jarsigner-plugin/usage.html)?它顯示瞭如何完成你似乎要求的jar簽名。之後,只需確保程序集插件正在拾取已簽名的罐子即可。 – 2012-04-27 18:17:09