1

我有使用 thwate 证书签名的 java 小程序,需要使用 Apple Developer ID 对其进行签名。

众所周知,Mac OS X 10.8 要求 Java 应用程序使用 Apple Developer ID 进行签名。它会导致运行 Java 小程序时出现一些问题,Gatekeeper 说“无法验证数字签名”。OS X 10.8 Gatekeeper and Java applet和Sign java applet存在相同的问题,以便它可以在 OS X 10.8 Mountain Lion 和 Windows 上运行

我还在 Oracle 的 Mac 常见问题解答中找到了这一点:http: //docs.oracle.com/javase/7/docs/technotes/guides/jweb/mac-faq.html#gatekeeper

因此,我请求并将 Apple Developer ID 证书下载到我的 Mac 上,但我找不到任何如何使用 Apple Developer ID 签署 Java 小程序的地方。

我尝试了以下方法:

  1. 使用协同设计工具在 Mac 上对小程序进行签名。

    codesign -s "Developer ID Application: MyCompany" MyApplet.jar
    

    但是这个命令实际上并没有修改 jar 文件(没有更改日期、文件大小或二进制内容)。

  2. 将 Apple 证书导出到 p12 并使用jarsigner。我将Apple Root CAApple Timestamp Certification AuthorityDeveloper ID Application: MyCompany导出到 p12 并以通用方式签署我的 jar。

  3. 将我的 thawte 证书导入 Mac Keychain Access 并将 Apple 和 thawte 证书导出到 p12。

这三种方式都没有给我任何东西。当我用小程序打开一个页面时,Gatekeeper 仍然说无法验证。

任何人都可以向我提供有关如何签署我的小程序的分步说明吗?

4

2 回答 2

1

哦,没办法=(Java小程序不能参与Developer ID计划。Apple的答案在这里https://stackoverflow.com/a/12210534/1068878

于 2012-09-03T03:53:23.507 回答
1

这对您来说可能有点晚了,但如果它对其他人有帮助:可以将 JAR 文件与 Java 运行时环境一起捆绑到 .app 中。然后,您可以使用您的 Apple 证书对 .app 进行签名,就像您使用 xcode 编写的一样。搜索“javapackager”(这只是执行此操作的众多方法之一)。理论上你甚至可以将这样的应用提交到应用商店。

于 2016-04-22T13:15:50.623 回答