我正在测试命令“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开发的开源免费应用程序。 bundle(CEMHapp.app)是使用pyinstaller创建的,可以在http://concrete.fsv.cvut.cz/~wilson/Software/CEMHapp_v.1.0_MacOSX_10.9.2.dmg下载
提前致以最诚挚的问候和谢意, W上。
答案 0 :(得分:1)
我想我找到了其中一个问题的解决方案,这部分回答了我的问题。
我更改了命令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文件却以某种方式丢失并替换为默认图标文件。此外,/ Applications中还出现了CEMHapp.pkg(带有零字节)的副本。有没有人知道什么是错的?
此外,我仍然不知道如何正确使用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 Installer兼容的产品档案,但不一定适用于Mac App Store。“
干杯, W上。