使用 jarsigner 在 Azure 管道上签署 Android 包失败并出现错误“请指定别名”
Signing an Android bundle on Azure pipelines with jarsigner fails with error " Please specify alias name "
我有一个 Azure DevOps 管道,可以很好地构建 android 应用程序。
我现在想签署此管道创建的 android 活动包,以便我可以分发它。
问题是,我必须签字。我使用这个 yaml 命令来签名
- task: CmdLine@2
displayName: 'Signing and aligning AAB file(s) **/*.aab'
inputs:
script: 'jarsigner -verbose -sigalg SHA256withRSA -digestalg SHA-256 -keystore
releaskey.keystore -storepass $(KeystorePassword) -keypass $(KeystorePassword)
/Users/runner/work/1/s/Platforms/MobileApp.Android/obj/
Release/android/bin/mobileapp.aab'
这是管道中的最终命令 运行:jarsigner -verbose -sigalg SHA256withRSA -digestalg SHA-256 -keystore releasekey.keystore -storepass *** -keypass *** /Users/runner/work/1/s/Platforms/MobileApp.Android/obj/Release/android/bin/mobileapp.aab
但问题是,最后我得到了错误:
Please specify alias name
我去了 jarsigner documentation here,它指出“别名在 -keystore 或默认密钥库指定的密钥库中定义。”
但是,虽然我精确了一个密钥库,但此时构建失败了。
您可以尝试为您的密钥库添加一个别名。
例如:
jarsigner -verbose -sigalg SHA256withRSA -digestalg SHA-256 -keystore xample.jks bundle.aab keystoreAlias
更多内容可参考本帖:
我有一个 Azure DevOps 管道,可以很好地构建 android 应用程序。 我现在想签署此管道创建的 android 活动包,以便我可以分发它。 问题是,我必须签字。我使用这个 yaml 命令来签名
- task: CmdLine@2
displayName: 'Signing and aligning AAB file(s) **/*.aab'
inputs:
script: 'jarsigner -verbose -sigalg SHA256withRSA -digestalg SHA-256 -keystore
releaskey.keystore -storepass $(KeystorePassword) -keypass $(KeystorePassword)
/Users/runner/work/1/s/Platforms/MobileApp.Android/obj/
Release/android/bin/mobileapp.aab'
这是管道中的最终命令 运行:jarsigner -verbose -sigalg SHA256withRSA -digestalg SHA-256 -keystore releasekey.keystore -storepass *** -keypass *** /Users/runner/work/1/s/Platforms/MobileApp.Android/obj/Release/android/bin/mobileapp.aab
但问题是,最后我得到了错误:
Please specify alias name
我去了 jarsigner documentation here,它指出“别名在 -keystore 或默认密钥库指定的密钥库中定义。” 但是,虽然我精确了一个密钥库,但此时构建失败了。
您可以尝试为您的密钥库添加一个别名。
例如:
jarsigner -verbose -sigalg SHA256withRSA -digestalg SHA-256 -keystore xample.jks bundle.aab keystoreAlias
更多内容可参考本帖: