ubuntu - zipalign 正在手动工作,但在 Jenkins 后期构建下失败

标签 ubuntu jenkins amazon-ec2 post-build-event zipalign

zipalign 正在手动工作,但在 Jenkins 后期构建下失败。我在 Ubuntu Aws ec2 实例上运行它。请有人可以帮我解决这个问题。

Jenkins 输出:

BUILD SUCCESSFUL

Total time: 14.421 secs
Built the following apk(s): 
    /var/lib/jenkins/workspace/PP_androidBuild/PatientPortal/platforms/android/build/outputs/apk/android-debug.apk
[PP_androidBuild] $ echo '"resolving effective environment"'
[SignApksBuilder] searching environment variable ANDROID_HOME=/opt/android-sdk-linux for zipalign...
[SignApksBuilder] found zipalign in Android SDK's latest build tools: /opt/android-sdk-linux/build-tools/23.0.1/zipalign
[SignApksBuilder] /opt/android-sdk-linux/build-tools/23.0.1/zipalign -f -p 4 /var/lib/jenkins/workspace/PP_androidBuild/PatientPortal/platforms/android/build/outputs/apk/android-debug.apk /var/lib/jenkins/workspace/PP_androidBuild/SignApksBuilder-out/zipalign/aligned-android-debug-6100835664895780913.apk
[PP_androidBuild] $ /opt/android-sdk-linux/build-tools/23.0.1/zipalign -f -p 4 /var/lib/jenkins/workspace/PP_androidBuild/PatientPortal/platforms/android/build/outputs/apk/android-debug.apk /var/lib/jenkins/workspace/PP_androidBuild/SignApksBuilder-out/zipalign/aligned-android-debug-6100835664895780913.apk
FATAL: [SignApksBuilder] zipalign failed: exit code 1
ERROR: zipalign failed on APK /var/lib/jenkins/workspace/PP_androidBuild/PatientPortal/platforms/android/build/outputs/apk/android-debug.apk: exit code 1
Finished: FAILURE

我在命令提示符下运行它时的输出:
jenkins@ip-172-31-22-20:~$  /opt/android-sdk-linux/build-tools/23.0.1/zipalign -f -p 4 /var/lib/jenkins/workspace/PP_androidBuild/PatientPortal/platforms/android/build/outputs/apk/android-debug.apk /var/lib/jenkins/workspace/PP_androidBuild/SignApksBuilder-out/zipalign/aligned-android-debug-6100835664895780913.apk
jenkins@ip-172-31-22-20:~$ ls -lthr /var/lib/jenkins/workspace/PP_androidBuild/SignApksBuilder-out/zipalign/aligned-android-debug-6100835664895780913.apk
-rw-r--r-- 1 jenkins jenkins 5.9M Sep  8 14:09 /var/lib/jenkins/workspace/PP_androidBuild/SignApksBuilder-out/zipalign/aligned-android-debug-6100835664895780913.apk

我进一步调查发现还创建了aligned-android-debug-6100835664895780913.apk:
$ ls -lthr /var/lib/jenkins/workspace/PP_androidBuild/SignApksBuilder-out/zipalign/aligned-android-debug-6100835664895780913.apk | grep aligned-android-debug-6100835664895780913.apk
-rwxrwxrwx 1 jenkins jenkins 5.9M Sep  8 14:09 /var/lib/jenkins/workspace/PP_androidBuild/SignApksBuilder-out/zipalign/aligned-android-debug-6100835664895780913.apk

那么错误是什么?如何找到它并排除故障?
FATAL: [SignApksBuilder] zipalign failed: exit code 1 

最佳答案

The problem is because of the generated key file


问题
  • 我已经为发布 apk 生成了 key 文件,
  • 但我已将我的 jenkins 构建配置为在调用 gradle 部分中生成调试 apk

  • zipalign exit with code1
    解决方案
  • 配置jenkins构建(如下所述)生成签名
    如果您为发布 apk
  • 生成 key 文件,则发布 apk

    Gradle config
  • 成功配置buid后,您将获得签名
    发布apk

  • Build success

    关于ubuntu - zipalign 正在手动工作,但在 Jenkins 后期构建下失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46118630/

    相关文章:

    amazon-web-services - 如何增加 AWS CPU 积分余额降为零?

    javascript - 即使使用了 Forever JS,Node JS 应用程序也会自行崩溃

    bash - 跳过 sed 中的模式

    c++ - OpenCV C++ 不会在 VideoCapture 下的 Ubuntu 16.04 上加载任何视频

    Jenkins:由于提交消息而避免构建

    jenkins - Jenkins 工件位于何处?

    mongodb - Meteor:部署到 Amazon EC2

    python - RabbitMQ python worker 脚本使用 100% CPU

    c++ - 错误 : 'vector' does not name a type/error: expected ',' or '...' before '<' token/error: 'vector' has not been declared

    jenkins - 种子工作要求 Jenkins 的脚本批准