0

我有一个使用多个外部库的小程序。该项目需要对小程序 JAR 进行签名,因为我执行磁盘操作。另一个要求是所有库都包含在 applet jar 中。我的第一次尝试是在 Eclipse 项目的本地目录中包含所有库的 JAR,并将它们包含在 Eclipse 项目中。之后,我将整个项目导出为不可执行的 JAR,运行大多数库。但是一些库仍然没有被引用,我不能完全通过小程序运行我的应用程序。有没有更合适的方法在签名的小程序 JAR 中使用库?

4

1 回答 1

0

如果您使用的是 maven,那么您可以提取所有需要的类。maven 插件将为您执行此操作。如果您有 jks 文件,它也可以对其进行签名。这是maven的一些设置。

<plugins>
        <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <source>1.5</source>
                <target>1.5</target>
            </configuration>
        </plugin>
        <plugin>
            <artifactId>maven-assembly-plugin</artifactId>
            <version>2.1</version>
            <configuration>
                <descriptorRefs>
                    <descriptorRef>jar-with-dependencies</descriptorRef>
                </descriptorRefs>
            </configuration>
            <executions>
                <execution>
                    <id>make-assembly</id>
                    <phase>package</phase>
                    <goals>
                        <goal>attached</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <executions>
                <execution>
                    <phase>package</phase>
                    <goals>
                        <goal>sign</goal>
                    </goals>
                </execution>
            </executions>
            <configuration>
                <keystore>${basedir}/the jks.jks</keystore>
                <alias>the alias</alias>
                <storepass>the store pass</storepass>
                <signedjar>${project.build.directory}/signed/${project.build.finalName}.jar</signedjar>
             <verify>true</verify>

               <jarPath>${project.build.directory}/${project.build.finalName}-jar-with-dependencies.${project.packaging}</jarPath>
        </configuration>
              </plugin>
    </plugins>
于 2013-12-26T10:50:12.610 回答