我正在测试命令“ productbuild”以存档我的应用程序捆绑包CEMHapp。想法是将生成的.pkg文件提交到Mac App Store。目前,我遇到以下问题:
当我尝试运行基本命令时:
productbuild --component "CEMHapp.app" /Applications CEMHapp.pkg
我收到以下错误消息:
productbuild: error: The component at "CEMHapp.app" is not a bundle.
我也尝试了命令“ pkgbuild”,即
pkgbuild --component CEMHapp.app --version 1 --install-location /Applications CEMHapp.pkg
但是出现以下错误
pkgbuild: Adding component at /Users/wilsondasilva/Desktop/Aplk/CEMHapp.app
pkgbuild: error: Path "/Users/wilsondasilva/Desktop/Aplk/CEMHapp.app" is not a valid bundle component (using destination path "/Users/wilsondasilva/Desktop/Aplk")
奇怪的是CEMHapp.app文件的运行就像一个超级按钮,因此我不明白为什么系统会给我上述错误。有人可以阐明这个话题并给我一些指导吗?
CEMHapp是使用QtCreator和Python开发的开源免费应用程序。捆绑软件(CEMHapp.app)是使用pyinstaller创建的,可以从http://concrete.fsv.cvut.cz/~wilson/Software/CEMHapp_v.1.0_MacOSX_10.9.2.dmg下载
在此致以最诚挚的问候和谢意
W.
最佳答案
我想我找到了其中一个问题的解决方案,部分解决了我的问题。
我更改了命令pkgbuild的某些部分,并成功创建了CEMHapp.pkg文件。
这是我使用的命令:
pkgbuild --identifier com.CEMHapp.pkg.app --install-location /Applications --root /Users/wilsondasilva/Desktop/Aplk CEMHapp.pkg
该过程完成后,终端中的消息显示为
pkgbuild: Wrote package to CEMHapp.pkg
我安装了CEMHapp.pkg,它可以正常工作。尽管如此,与CEMHapp相关的.icns文件还是以某种方式丢失并被默认图标文件替换。此外,CEMHapp.pkg(具有零字节)的副本出现在/ Applications中。有人对出什么问题有头绪吗?
此外,我仍然不知道如何正确使用productbuild。与pkgbuild一样,当我使用参数--root时,它始终可以工作,但使用--component时,效果却不一样,请参见以下错误消息:
pkgbuild --identifier com.CEMHapp.pkg.app --install-location /Applications --component /Users/wilsondasilva/Desktop/Aplk CEMHapp.pkg
pkgbuild: Adding component at /Users/wilsondasilva/Desktop/Aplk
pkgbuild: error: Path "/Users/wilsondasilva/Desktop/Aplk" is not a valid bundle component (using destination path "/Users/wilsondasilva/Desktop")
请记住,根据Mac Developer's Library
“创建产品存档以提交到Mac App Store时,仅使用productbuild的--component模式。其他模式将创建与OS X安装程序兼容的产品存档,但Mac App Store不一定接受。 ”
干杯,
W.