我已经为Java应用程序创建了app和dmg。我正在签署以及通过codesign验证dmg和app。
codesign -s“mycomapany name”myproduct.dmg / myproduct.app
使用以下命令验证两者 -
codesign -v myproduct.dmg / myproduct.app
单独为app和dmg执行此命令时,它没有给出任何消息来确认它们是否已签名?
与执行命令一样 - jarsigner -verify -certs myproduct.jar 会返回“ jar已验证。”
如何验证dmg和app是否已正确签名。
由于
答案 0 :(得分:6)
要从codesign
命令获得更多输出,请在第一个之后添加第二个-v
参数:
codesign -v -v myproduct.dmg/myproduct.app
这相当于:
codesign --verify --verbose myproduct.dmg/myproduct.app
codesign
命令还有一个退出值,可用于获取其结果:
签名应用的示例:
codesign -v myproduct.dmg/myproduct.app
echo $?
Output: 0
codesign -v myproduct.dmg/myproduct.app && echo SIGNED!
Output: SIGNED!
codesign -v myproduct.dmg/myproduct.app || echo UNSIGNED!
No output
未签名应用的示例:
codesign -v myproduct.dmg/unsigned.app
echo $?
Output: 1
codesign -v myproduct.dmg/unsigned.app && echo SIGNED!
No output
codesign -v myproduct.dmg/unsigned.app || echo UNSIGNED!
Output: UNSIGNED!