1

この投稿 (投稿へのリンク)で説明されているように、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 だけでしょうか?

4

1 に答える 1