[英]Can't generate signed APK in GitLab CI
I'm testing gitlab ci/cd and I'm trying to build a signed APK but my script failed. 我正在测试gitlab ci / cd,并尝试构建一个已签名的APK,但是我的脚本失败了。 What should I change or add? 我应该更改或添加什么?
I add variables KEYSTORE_FILE, KEYSTORE_PASSWORD, KEY_ALIAS, KEY_PASSWORD with values. 我将变量KEYSTORE_FILE,KEYSTORE_PASSWORD,KEY_ALIAS,KEY_PASSWORD与值相加。
assembleRelease:
stage: release
script:
- echo $KEYSTORE_FILE | base64 -d > my.keystore
- ./gradlew assembleRelease
-Pandroid.injected.signing.store.file=$(pwd)/my.keystore
-Pandroid.injected.signing.store.password=$KEYSTORE_PASSWORD
-Pandroid.injected.signing.key.alias=$KEY_ALIAS
-Pandroid.injected.signing.key.password=$KEY_PASSWORD
artifacts:
paths:
- app/build/outputs/apk/release
Error: 错误:
FAILURE: Build failed with an exception.
What went wrong:
Execution failed for task ':app:packageRelease'.
1 exception was raised by workers:
java.lang.RuntimeException:
com.android.ide.common.signing.KeytoolException: Failed to read key from
store "/builds/juantamad.02072019/2019_samplebuild/my.keystore": null
But it should be successfully 但这应该成功
Provided you have correct indentations (as posted they are not), the problem is likely to be caused by multi-line command - it just executes - ./gradlew assembleRelease
first, without further arguments 如果您有正确的缩进( - ./gradlew assembleRelease
),则该问题很可能是由多行命令引起的-它只是执行- ./gradlew assembleRelease
首先,没有其他参数
To wrap the long line you can use YAML multi-line strings: 要包装长行,可以使用YAML多行字符串:
script:
- ...
- >
./gradlew assembleRelease
-Pandroid.injected.signing.store.file=$(pwd)/my.keystore
-Pandroid.injected.signing.store.password=$KEYSTORE_PASSWORD
-Pandroid.injected.signing.key.alias=$KEY_ALIAS
-Pandroid.injected.signing.key.password=$KEY_PASSWORD
Read more: 阅读更多:
-- -
Another possible cause - if your env var is set as Protected in project settings, 另一个可能的原因-如果您的环境变量在项目设置中设置为“ 受保护” ,
and you are working in a branch which is not Protected . 并且您正在不受保护的分支中工作。
Then var is not passed to your job 然后var不会传递给您的工作
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.