构建.dmg软件包需要Apple Developer ID

时间:2016-03-02 11:10:58

标签: macos javafx build dmg apple-id

我正在尝试使用Eclipse和e(fx)clipse为我的JavaFX应用程序构建一个.dmg软件包,但它给了我以下错误:

Did not find a key matching 'Developer ID Application: '

BUILD FAILED
/Users/xxx/git/xxx/xxx/build/build.xml:203: Error: Bundler "DMG Installer" (dmg) failed to produce a bundle.

在这种情况下,有很多关于如何使用有效的Apple Developer ID证书的帖子。但根据this Apple页面,使用开发者ID证书签署应用程序的唯一原因如下:

  

如果您的应用未使用颁发的开发者ID证书进行签名   Apple,它不会在启用了Gatekeeper的Mac上启动。

但是我必须禁用Gatekeeper才能启动应用程序。特别是因为我目前最感兴趣的是将应用程序打包为.dmg用于测试目的。

那么可以在不使用开发者ID的情况下为我的JavaFX应用程序构建.dmg包吗?

3 个答案:

答案 0 :(得分:1)

这仍然是可能的(截至1.8.0_76)并且我一直这样做。 我的部署设置是:

    <fx:deploy
        verbose="true"
        embedJNLP="false"
        extension="false"
        includeDT="false"
        offlineAllowed="true"
        outdir="${basedir}/deploy"
        outfile="???"
        nativeBundles="dmg"
        updatemode="background" >

        <fx:info title="???" vendor="???"/>
        <fx:application refId="fxApplication"/>
        <fx:resources refid="appRes"/>
    </fx:deploy>

你将不得不替换???用你自己的名字。

答案 1 :(得分:1)

事实证明,您需要做的就是在构建机器上禁用Gatekeeper以构建.dmg软件包。不知道他们为什么这样实现它。无论如何,这是我的问题的答案。感谢您的答案,证明可以开始。

答案 2 :(得分:1)

我有同样的情况,在我的情况下,解决方案是卸载已安装的dmg文件:

df -h 然后 umount / Volumes /...