この投稿 (投稿へのリンク)で説明されているように、Android Maven プロジェクトを作成しました。私は最後の原型である android-release を使用します。
バージョンをリリースする場合を除いて、証明書のプロパティを渡す方法がわかりません。次の内容の settings.xml を作成しました。
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<profiles>
<profile>
<id>android-debug</id>
<properties>
<sign.keystore>/Users/me/.android/debug.keystore</sign.keystore>
<sign.alias>androiddebugkey</sign.alias>
<sign.storepass>android</sign.storepass>
<sign.keypass>android</sign.keypass>
</properties>
</profile>
<profile>
<id>android-release</id>
<properties>
<sign.keystore>/Users/me/myKeystore.keystore</sign.keystore>
<sign.alias>myAlias</sign.alias>
<sign.storepass><![CDATA[myPassword]]></sign.storepass>
<sign.keypass><![CDATA[myPassword]]></sign.keypass>
</properties>
</profile>
</profiles>
次に実行します:
mvn -s setttings.xml clean release:prepare release:perform -Pandroid-release
しかし、私は android-release プロファイルで定義された値を無視し続けています。
これを機能させる方法はありますか?私が実行したとき:
mvn -s setttings.xml clean install -Pandroid-release,release
apk をビルドし、適切な証明書で署名します。おそらく、settings.xml からプロパティを読み取ることができない maven-enforcer-plugin だけでしょうか?