Signing APK with the Maven-Jar-Signer Plugin
April 17th, 2010 by Micha KopsThere is a nice Maven plugin helping you signing your Android app – the Maven Jar Signer Plugin. If you want to learn more about Maven integration in an android project take a look at this article.
Contents
Maven Profile Setup
Add the following code to your pom.xml
<?xml version="1.0"?> <profiles> <profile> <id>sign</id> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jarsigner-plugin</artifactId> <version>1.2</version> <executions> <execution> <id>signing</id> <goals> <goal>sign</goal> </goals> <phase>package</phase> <inherited>true</inherited> <configuration> <archiveDirectory/> <includes> <include>target/*.apk</include> </includes> <keystore>path/to/keystore</keystore> <storepass>storepasword</storepass> <keypass>keypassword</keypass> <alias>key-alias</alias> </configuration> </execution> </executions> </plugin> <plugin> <groupId>com.jayway.maven.plugins.android.generation2</groupId> <artifactId>maven-android-plugin</artifactId> <inherited>true</inherited> <configuration> <sign> <debug>false</debug> </sign> </configuration> </plugin> </plugins> </build> </profile> </profiles>
Signing
Trigger the profile with the following command
mvn install -Psign
Other Goals
- jarsigner:sign – signs your project’s artifacts
- jarsigner:verify – verifies the project’s artifact
Useful command line options:
- Disable the plugin
mvn -Djarsigner.skip=true
- Disable attachment processing
mvn -Djarsigner.attachments=false
Resources
- Maven Jarsigner Plugin Homepage
- Android Maven Plugin Documentation: Signing examples
- Maven Jarsigner Goal Documentation
Article Updates
- 2015-03-03: Table of contents and headings added.
Tags: Android, apk, jar, key, maven, pom.xml, sign, signing, smartphone
September 15th, 2011 at 5:31 pm
[...] has already been covered, in a useful post by the guys at Novoda, and various other blog posts scattered around the web. I’ve followed at least 10 tutorials and each time I was unable to [...]