Я хотел бы построить сборку, а затем подписать ее. Моя проблема в том, что jarsigner подписывает не сборку, а только отдельный файл jar. Не могли бы вы сказать мне, в чем проблема? Maven кажется мне «волшебным» после того, как я использовал Ant в течение многих лет. Я не вижу, как плагины взаимодействуют и передают информацию друг другу.
После выполнения mvn install
я получаю два jar-файла, один из которых называется example-1.0.0-SNAPSHOT.jar
, и он подписан, а другой называется example-1.0.0-jar-with-dependencies.jar
, и он не подписан. Соло мне не нужно, только сборка, но та подписанная.
Вот мой pom.xml:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jarsigner-plugin</artifactId>
<version>1.2</version>
<executions>
<execution>
<id>sign</id>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
<configuration>
<keystore>${project.basedir}\keystore\mykeystore</keystore>
<alias>myalias</alias>
<storepass>...</storepass>
<keypass>...</keypass>
</configuration>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<executions>
<execution>
<id>make-my-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
<configuration>
<archive>
<manifest>
<mainClass>com.example.FooBar</mainClass>
</manifest>
</archive>
<appendAssemblyId>true</appendAssemblyId>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
</plugins>
</build>