2012-02-06 23 views
2

現在、Androidアプリの署名をデバッグしています。私は私が得るすべてはある試みる何1つの目標/実行をMavenで開始する方法

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-jarsigner-plugin</artifactId> 
    <executions> 
    <execution> 
     <id>signing</id> 
     <goals> 
     <goal>sign</goal> 
     </goals> 
     <phase>package</phase> 

しかし、どんなに:

[ERROR] Could not find goal 'signing' in plugin org.apache.maven.plugins:maven-jarsigner-plugin:1.2 among available goals verify, sign, help -> [Help 1] 
org.apache.maven.plugin.MojoNotFoundException: Could not find goal 'signing' in plugin org.apache.maven.plugins:maven-jarsigner-plugin:1.2 among available goals verify, 
sign, help 

または

org.apache.maven.lifecycle.LifecyclePhaseNotFoundException: Unknown lifecycle phase "sign". You must specify a valid lifecycle phase or a goal in the format <plugin-pre 
fix>:<goal> or <plugin-group-id>:<plugin-artifact-id>[:<plugin-version>]:<goal>. Available lifecycle phases are: validate, initialize, generate-sources, process-sources 
, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-co 
mpile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy, pre-clean, clean, p 
ost-clean, pre-site, site, post-site, site-deploy. 
私はちょうどこの唯一無二のプラグインを実行することができれば、これは非常に簡単になります

またはその他のエラー。私は<archive>私の中のアーティファクトを指しているので

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-jarsigner-plugin</artifactId> 
    <version>1.2</version> 
    <executions> 
     <execution> 
      <id>signer</id> 
      <goals> 
       <goal>sign</goal> 
      </goals> 
     </execution> 
    </executions> 
    <configuration> 
     <archive>target/${project.artifactId}-${project.version}.jar</archive> 
     <keystore>src/main/signer/.keystore</keystore> 
     <alias>MyCert</alias> 
     <storepass>password</storepass> 
     <keypass>password</keypass> 
    </configuration> 
</plugin> 

答えて

4

あなたは、このコマンドを使用してちょうどサイン目標を実行することができます。

mvn jarsigner:sign 

私はこのプラグインが設定されているが、このように私のポンポンでありますターゲットディレクトリ私はmvn clean installを最初に実行しなければなりません。その後、maven-jarsigner-pluginを再度実行してjarに署名したい場合は、mvn jarsigner:signを実行するだけです。 (私は通常、完全に "mvn clean install"を実行するだけで、このプラグイン/ゴールのみを実行するのではありませんが、動作します)

関連する問題