【问题标题】:GateKeeper warns dmg file is damaged after signing the application using install4jGateKeeper 在使用 install4j 签署应用程序后警告 dmg 文件已损坏
【发布时间】:2015-01-20 00:13:32
【问题描述】:

我们已申请开发者 ID 申请证书。将证书和私钥导出为 .p12 扩展名,并导入安装 install4j 5.1.1 应用程序的 Mac 钥匙串工具。还将开发人员 ID 应用程序证书 .cer 扩展文件与私钥一起导出到 install4j 安装文件夹下的 /resources/macos/certs。

重新启动 install4j 应用程序并构建项目以使用使用 Developer ID 应用程序证书签名的 macOS 创建可执行文件。直接安装在系统上的 dmg 文件不会提供任何错误。但是在服务器上传相同文件后从浏览器下载时,Gatekeeper 显示警告“DMG 文件已损坏”。

您能建议一些解决方案吗?

不同的帖子提出了不同的解决方案,但不是一个明确的解决方案。

【问题讨论】:

  • 尝试执行codesign -vv [installer.dmg]检查签名中的错误。另外,请更新到最新的 5.1.x 版本。
  • 我已升级到最新的 5.1.15 版本,然后按照相同的步骤将 Developer ID 证书放入 /resources/macos/certs/ 中,并将私钥和证书添加到钥匙串中。引用了项目中的 .p12 文件。按照建议执行 codesign -vv [installer.dmg] 后,我收到错误“[installer.dmg]:代码对象根本没有签名”
  • 对不起,我给出了错误的指令,你必须挂载 DMG,cd 到 /Volumes/[mount name] 并在那里执行codesign -vv [AppName] Installer.app

标签: macos install4j codesign


【解决方案1】:

“此文件已损坏且无法打开”错误有时会在您正在登录或执行 install4j 构建的 mac 上导致您的 mac 钥匙串中没有中间证书。 当您单击 mac 钥匙串中的证书时,它应该有一个绿色的勾号,并且没有显示任何错误。 还有其他 stackoverflow 线程 - 将链接它们,但我找不到它们。 你可以试试苹果目前列出的这些: https://developer.apple.com/certificationauthority/AppleWWDRCA.cerhttps://developer.apple.com/certificationauthority/DeveloperIDCA.cer

如果您缺少中间证书,在 mac 密钥工具中查看时,您将收到“此证书由未知机构签名”。如果我是你,我会先检查一下。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-22
    • 1970-01-01
    相关资源
    最近更新 更多