jsign
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency> <groupId>net.jsign</groupId> <artifactId>jsign</artifactId> <version>7.0</version> </dependency>
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <parent> <artifactId>jsign-parent</artifactId> <groupId>net.jsign</groupId> <version>7.0</version> </parent> <modelVersion>4.0.0</modelVersion> <groupId>net.jsign</groupId> <artifactId>jsign</artifactId> <name>Jsign - Authenticode signing in Java (Distribution)</name> <version>7.0</version> <build> <plugins> <plugin> <artifactId>maven-javadoc-plugin</artifactId> <version>3.11.2</version> <executions> <execution> <id>attach-javadocs</id> <goals> <goal>jar</goal> </goals> <configuration> <includeDependencySources>true</includeDependencySources> <dependencySourceExcludes> <dependencySourceExclude>net.jsign:jsign-cli</dependencySourceExclude> <dependencySourceExclude>net.jsign:jsign-ant</dependencySourceExclude> <dependencySourceExclude>org.kohsuke.metainf-services:metainf-services</dependencySourceExclude> </dependencySourceExcludes> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.jacoco</groupId> <artifactId>jacoco-maven-plugin</artifactId> <version>0.8.12</version> <executions> <execution> <id>jacoco-report</id> <phase>site</phase> <goals> <goal>report-aggregate</goal> </goals> </execution> </executions> </plugin> <plugin> <artifactId>maven-shade-plugin</artifactId> <version>3.6.0</version> <executions> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> <configuration> <minimizeJar>true</minimizeJar> <artifactSet> <excludes> <exclude>org.kohsuke.metainf-services:metainf-services</exclude> </excludes> </artifactSet> <filters> <filter> <artifact>*:*</artifact> <excludes> <exclude>META-INF/*</exclude> <exclude>META-INF/maven/**</exclude> <exclude>META-INF/services/*log4j*</exclude> <exclude>META-INF/services/*poi*</exclude> <exclude>**/*_de.properties</exclude> <exclude>**/commons/codec/language/**</exclude> <exclude>**/commons/math3/random/**</exclude> <exclude>**/poi/ss/formula/**</exclude> <exclude>**/poi/sl/draw/geom/**</exclude> <exclude>font_metrics.properties</exclude> <exclude>assets/org/apache/commons/math3/**</exclude> <exclude>native/**</exclude> <exclude>**/bouncycastle/pqc/**</exclude> <exclude>**/bouncycastle/crypto/digests/Tiger**</exclude> <exclude>**/bouncycastle/crypto/digests/GOST**</exclude> </excludes> </filter> <filter> <artifact>*:*</artifact> <excludeDefaults>false</excludeDefaults> <includes> <include>**/JsignCLI</include> <include>**/JsignTask</include> <include>**/PESigner</include> <include>**/PESignerTask</include> <include>**/KeyStoreUtils</include> <include>**/JsignJcaProvider</include> <include>**/jcajce/provider/symmetric/PBE*</include> <include>**/jcajce/provider/symmetric/AES*</include> <include>**/jcajce/provider/asymmetric/RSA*</include> </includes> </filter> </filters> <relocations> <relocation> <pattern>org.bouncycastle</pattern> <shadedPattern>net.jsign.bouncycastle</shadedPattern> </relocation> <relocation> <pattern>org.apache.commons</pattern> <shadedPattern>net.jsign.commons</shadedPattern> </relocation> <relocation> <pattern>org.apache.logging.log4j</pattern> <shadedPattern>net.jsign.log4j</shadedPattern> </relocation> <relocation> <pattern>org.apache.poi</pattern> <shadedPattern>net.jsign.poi</shadedPattern> </relocation> <relocation> <pattern>com.cedarsoftware</pattern> <shadedPattern>net.jsign.json-io</shadedPattern> </relocation> </relocations> <transformers> <transformer> <mainClass>net.jsign.JsignCLI</mainClass> <manifestEntries> <Add-Exports>jdk.crypto.cryptoki/sun.security.pkcs11.wrapper</Add-Exports> <Add-Opens>java.base/javax.crypto</Add-Opens> </manifestEntries> </transformer> <transformer /> </transformers> </configuration> </execution> </executions> </plugin> <plugin> <groupId>com.github.wvengen</groupId> <artifactId>proguard-maven-plugin</artifactId> <version>2.6.1</version> <executions> <execution> <id>proguard-minimizing</id> <phase>package</phase> <goals> <goal>proguard</goal> </goals> <configuration> <obfuscate>false</obfuscate> <options> <option>-dontwarn</option> <option>-dontnote **</option> <option>-dontoptimize</option> <option>-keep public class net.jsign.bouncycastle.jcajce.provider.symmetric.* { *; }</option> <option>-keep public class net.jsign.bouncycastle.jcajce.provider.asymmetric.* { *; }</option> <option>-keep public class net.jsign.* { *; }</option> <option>-keep public class net.jsign.asn1.authenticode.* { *; }</option> <option>-keep public class net.jsign.asn1.authenticode.* { *; }</option> <option>-keep public class net.jsign.jca.* { *; }</option> <option>-keep public class net.jsign.msi.* { *; }</option> <option>-keep public class net.jsign.pe.* { *; }</option> <option>-keep public class net.jsign.script.* { *; }</option> <option>-keep public class net.jsign.timestamp.* { *; }</option> <option>-keep public class * implements net.jsign.spi.SignableProvider { *; }</option> <option>-keeppackagenames net.jsign</option> <option>-keepclassmembers class * extends java.lang.Enum { *; }</option> </options> <injar>${project.build.finalName}.jar</injar> <includeDependency>true</includeDependency> </configuration> </execution> </executions> <dependencies> <dependency> <groupId>com.guardsquare</groupId> <artifactId>proguard-base</artifactId> <version>7.6.0</version> </dependency> <dependency> <groupId>com.guardsquare</groupId> <artifactId>proguard-core</artifactId> <version>9.1.6</version> </dependency> </dependencies> </plugin> <plugin> <groupId>io.github.zlika</groupId> <artifactId>reproducible-build-maven-plugin</artifactId> <version>0.17</version> <executions> <execution> <id>reproducible-jar</id> <phase>package</phase> <goals> <goal>strip-jar</goal> </goals> <configuration> <zipDateTime>${project.build.outputTimestamp}</zipDateTime> <zipDateTimeFormatPattern>yyyy-MM-dd'T'HH:mm:ss'Z'</zipDateTimeFormatPattern> </configuration> </execution> </executions> </plugin> <plugin> <groupId>com.github.siom79.japicmp</groupId> <artifactId>japicmp-maven-plugin</artifactId> <version>0.23.1</version> <executions> <execution> <phase>verify</phase> <goals> <goal>cmp</goal> </goals> </execution> </executions> <configuration> <parameter> <onlyModified>true</onlyModified> <onlyBinaryIncompatible>true</onlyBinaryIncompatible> <includeSynthetic>true</includeSynthetic> <breakBuildOnBinaryIncompatibleModifications>true</breakBuildOnBinaryIncompatibleModifications> <breakBuildOnSourceIncompatibleModifications>true</breakBuildOnSourceIncompatibleModifications> <excludes> <exclude>net.jsign.AuthenticodeSigner#addNestedSignature(net.jsign.bouncycastle.cms.CMSSignedData,net.jsign.bouncycastle.cms.CMSSignedData)</exclude> <exclude>net.jsign.appx.APPXFile</exclude> <exclude>net.jsign.asn1.*</exclude> <exclude>net.jsign.bouncycastle.*</exclude> <exclude>net.jsign.pe.*</exclude> <exclude>net.jsign.poi.*</exclude> <exclude>net.jsign.commons.*</exclude> <exclude>net.jsign.json-io.*</exclude> <exclude>net.jsign.log4j.*</exclude> <exclude>net.jsign.PESigner</exclude> <exclude>net.jsign.PESignerCLI</exclude> <exclude>net.jsign.JsignTask</exclude> </excludes> <ignoreMissingClassesByRegularExpressions> <ignoreMissingClassesByRegularExpression>org.apache.tools.ant.*</ignoreMissingClassesByRegularExpression> </ignoreMissingClassesByRegularExpressions> <skipXmlReport>true</skipXmlReport> <skipDiffReport>true</skipDiffReport> <overrideCompatibilityChangeParameters> <overrideCompatibilityChangeParameter> <compatibilityChange>METHOD_NEW_DEFAULT</compatibilityChange> <binaryCompatible>true</binaryCompatible> <sourceCompatible>true</sourceCompatible> </overrideCompatibilityChangeParameter> <overrideCompatibilityChangeParameter> <compatibilityChange>METHOD_ABSTRACT_NOW_DEFAULT</compatibilityChange> <binaryCompatible>true</binaryCompatible> <sourceCompatible>true</sourceCompatible> </overrideCompatibilityChangeParameter> </overrideCompatibilityChangeParameters> </parameter> </configuration> </plugin> <plugin> <artifactId>maven-antrun-plugin</artifactId> <version>3.1.0</version> <executions> <execution> <id>replace-version</id> <phase>package</phase> <goals> <goal>run</goal> </goals> <configuration> <target> <mkdir /> <copy> <fileset /> <filterset> <filter /> </filterset> </copy> </target> </configuration> </execution> <execution> <id>make-rpm</id> <phase>package</phase> <goals> <goal>run</goal> </goals> <configuration> <target> <taskdef /> <redline> <tarfileset /> <tarfileset> <include /> </tarfileset> <depends /> </redline> </target> </configuration> </execution> </executions> <dependencies> <dependency> <groupId>org.redline-rpm</groupId> <artifactId>redline</artifactId> <version>1.1.12</version> </dependency> </dependencies> </plugin> <plugin> <groupId>org.vafer</groupId> <artifactId>jdeb</artifactId> <version>1.10</version> <executions> <execution> <phase>package</phase> <goals> <goal>jdeb</goal> </goals> <configuration> <attach>false</attach> <dataSet> <data> <type>file</type> <src>${project.build.directory}/${project.build.finalName}.jar</src> <mapper> <type>perm</type> <prefix>/usr/share/jsign</prefix> </mapper> </data> <data> <type>directory</type> <src>${project.build.directory}/deb/data</src> </data> </dataSet> </configuration> </execution> </executions> </plugin> </plugins> </build> <profiles> <profile> <id>proguard-bootclasspath-pre-java9</id> <build> <plugins> <plugin> <groupId>com.github.wvengen</groupId> <artifactId>proguard-maven-plugin</artifactId> <executions> <execution> <id>proguard-minimizing</id> <configuration> <libs> <lib>${java.home}/lib/rt.jar</lib> </libs> </configuration> </execution> </executions> </plugin> </plugins> </build> </profile> <profile> <id>proguard-bootclasspath-post-java9</id> <build> <plugins> <plugin> <groupId>com.github.wvengen</groupId> <artifactId>proguard-maven-plugin</artifactId> <executions> <execution> <id>proguard-minimizing</id> <configuration> <libs> <lib>${java.home}/jmods/java.base.jmod</lib> <lib>${java.home}/jmods/java.logging.jmod</lib> <lib>${java.home}/jmods/java.smartcardio.jmod</lib> <lib>${java.home}/jmods/java.sql.jmod</lib> <lib>${java.home}/jmods/java.xml.jmod</lib> <lib>${java.home}/jmods/jdk.crypto.cryptoki.jmod</lib> </libs> </configuration> </execution> </executions> </plugin> </plugins> </build> </profile> <profile> <id>release</id> <build> <plugins> <plugin> <artifactId>maven-antrun-plugin</artifactId> <version>3.1.0</version> <executions> <execution> <id>update-release-version</id> <phase>package</phase> <goals> <goal>run</goal> </goals> <configuration> <target> <checksum /> <replaceregexp /> <replaceregexp /> <replaceregexp /> <replaceregexp /> <replaceregexp /> <replaceregexp /> <replaceregexp /> <replaceregexp /> <replaceregexp /> <replaceregexp /> <replaceregexp /> </target> </configuration> </execution> </executions> </plugin> </plugins> </build> </profile> </profiles> <dependencies> <dependency> <groupId>org.kohsuke.metainf-services</groupId> <artifactId>metainf-services</artifactId> <version>1.11</version> <scope>compile</scope> <optional>true</optional> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.13.2</version> <scope>test</scope> </dependency> <dependency> <groupId>org.hamcrest</groupId> <artifactId>hamcrest-core</artifactId> <version>3.0</version> <scope>test</scope> <exclusions> <exclusion> <artifactId>hamcrest</artifactId> <groupId>org.hamcrest</groupId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-inline</artifactId> <version>4.11.0</version> <scope>test</scope> <exclusions> <exclusion> <artifactId>mockito-core</artifactId> <groupId>org.mockito</groupId> </exclusion> </exclusions> </dependency> <dependency> <groupId>net.bytebuddy</groupId> <artifactId>byte-buddy-agent</artifactId> <version>1.15.11</version> <scope>test</scope> </dependency> <dependency> <groupId>net.bytebuddy</groupId> <artifactId>byte-buddy</artifactId> <version>1.15.11</version> <scope>test</scope> </dependency> </dependencies> </project>