我有使用thwate证书签名的java applet,需要使用Apple Developer ID进行签名 .
众所周知,Mac OS X 10.8要求使用Apple Developer ID签名Java应用程序 . 它导致运行Java applet时出现一些问题,Gatekeeper说"The digital signature could not be verified" . 有相同的问题OS X 10.8 Gatekeeper and Java applets和Sign java applet so that it works on OS X 10.8 Mountain Lion and Windows
我也在Oracle的Mac FAQ中找到了这个:http://docs.oracle.com/javase/7/docs/technotes/guides/jweb/mac-faq.html#gatekeeper
所以,我要求并将Apple Developer ID证书下载到我的Mac,但我找不到任何有关如何使用Apple Developer ID签署Java applet的地方 .
我尝试过以下方法:
- 使用 codesign 工具在Mac上签名小程序 .
codesign -s "Developer ID Application: MyCompany" MyApplet.jar
但是这个命令实际上没有修改jar文件(没有更改日期,文件大小或二进制内容) .
-
将Apple证书导出到p12并使用 jarsigner . 我将 Apple Root CA , Apple Timestamp Certification Authority 和 Developer ID Application: MyCompany 导出到p12并以常用方式签署我的jar .
-
将我的解密证书导入Mac Keychain Access并将Apple和thawte证书导出到p12 .
这三种方式都没有给我什么 . 当我用applet打开一个页面时,Gatekeeper仍然说它无法验证 .
有人可以提供有关如何签署我的applet的分步说明吗?
2 回答
哦,没有办法做到这一点=(Java applets不能参与开发者ID程序.Apple的答案在这里https://stackoverflow.com/a/12210534/1068878 .
这对你来说可能有点晚了,但是如果它对其他人有帮助:可以将JAR文件和Java运行时环境捆绑到.app中 . 然后,您可以使用Apple证书对.app进行签名,就像使用xcode编写一样 . 搜索'javapackager'(这只是众多方法之一) . 理论上,您甚至可以将这样的应用程序提交到应用程序商店 .