我正在尝试签署我的 apk,以便我可以使用以下命令发布我的应用程序的更新:jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore myrelease-key.keystore CordovaAppreleaseunsigned.apk alias_name
但出现此错误:
jarsigner: Certificate chain not found for: ¡sigalg. ¡sigalg must reference a valid KeyStore key entry containing a private key and corresponding public key certificate chain.
I´ve just moved to a new computer so I copied my .keystore file to it. When I do keytool -list -v
it seems like it contains the private key, so I dont understand whats wrong.. Is the public key missing?
显然这是一个编码问题。该命令包含看起来类似于减号(ASCII 代码 0x2D)的字符,但实际上是许多破折号或连字符之一(http://en.wikipedia.org/wiki/Dash http://en.wikipedia.org/wiki/Dash).
由于第一个参数的字符代码错误”-verbose
" 被 jarsigner 识别为 jar 文件的名称而不是选项,并且 "-sigalg
" 被识别为别名:
Usage: jarsigner [options] jar-file alias
这解释了为什么错误消息中的别名是“¡sigalg
" 而不是命令中的实际别名,并且在开头包含一个倒置的感叹号(这曾经是另一个字符集中的“-”)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)