【问题标题】:How to pass a custom jar file to maven jarsigner plugin for signing如何将自定义 jar 文件传递​​给 maven jarsigner 插件进行签名
【发布时间】:2012-04-25 19:48:34
【问题描述】:

我有一个 Maven 构建配置,我在其中执行以下步骤

1) 使用maven组装插件编译构建jar文件(ABC.jar) 2) 使用 maven-proguard 插件运行 proguard 以缩小和混淆 jar 文件以得到生成的文件为 ABC-small.jar 3)运行maven jarsigner插件对最终jar ABC-small.jar进行签名

问题在于 jarsigner 插件总是选择从 maven-assembly 生成的初始 ABC.jar 文件,而不是从 maven-proguard 插件生成的 ABC-small.jar。

我如何告诉 jarsigner 插件选择 ABC-small.jar ?

这是我在 pom 文件中的 maven-jarsigner 配置

<plugin>
    <artifactId>maven-jarsigner-plugin</artifactId>
    <version>1.2</version>
    <executions>
        <execution>
            <id>sign</id>
            <goals>
                <goal>sign</goal>

            </goals>
        </execution>
    </executions>
    <configuration>
        <!--  <storetype>pkcs12</storetype> -->
        <keystore>cert\keystore</keystore>
        <alias>applet</alias>
        <storepass>applet</storepass>
        <keypass>applet</keypass>
    </configuration>
</plugin>

【问题讨论】:

    标签: maven jarsigner


    【解决方案1】:

    plugin docs 表示基本配置对项目 jar 和任何 附加 jar 进行签名。 ABC-small.jar 是否附加到项目中?如果不是,请尝试在插件配置中包含 &lt;archive&gt; 元素。值应该是 ABC-small.jar。

    【讨论】:

      【解决方案2】:
      <configuration>
        <archive>${project.build.directory}/ABC-small.jar</archive>
        <keystore>cert\keystore</keystore>
        <alias>applet</alias>
        <storepass>applet</storepass>
        <keypass>applet</keypass>
      </configuration>
      

      在您的配置中,您必须在标签中提及 jar 文件路径。

      添加更多信息 @user944849 解释.. 如果你想为你的胃口生成密钥库,请使用 keytool-maven-plugin ..

      【讨论】:

        猜你喜欢
        • 2013-09-05
        • 1970-01-01
        • 2014-09-08
        • 2010-11-22
        • 2010-11-01
        • 1970-01-01
        • 1970-01-01
        • 2012-07-15
        • 2018-09-29
        相关资源
        最近更新 更多