我的程序erlier以压缩包的形式出现,但现在我计划添加安装后必须启动的守护进程。因此,我决定在安装时创建软件包,这将运行后安装脚本。首先,我创建了这样一个简单的包:
productbuil --component MyAppName.app /Applications --在“我的证书的通用名称”MyAppName.pkg上签名
试着安装它。
安装成功,但在/Application目录中找不到应用程序包之后。虽然我在/var/log/install.log中找到了这个恶搞,但我发现这一行:
Users/myUserName/PAServer/scratch-dir/UserName1.Kh-profileName/MyAppName.app : installd1954: PackageKit: Applications/MyAppName.app
在此之后,我找到这个答案Making OS X Installer Packages like a Pro - Xcode Developer ID ready pkg,并尝试执行在其中找到的命令行。
pkgbuild -analyze-root ./MyProgram.app MyProgram.app.plist pkgbuild:从./MyProgram.app pkgbuild的内容中推断包组件:将新的组件属性列表写入MyProgram.app1.plist
在这里,我计划编辑plist文件,但是首先我尝试使用默认的params来简单构建包。
pkgbuild --root ./MyProgram.app - component -plist ./MyProgram.app.plist pkgbuild:从./MyProgram.app.plist pkgbuild读取组件:错误:没有指定包标识符,也不完全是从其中派生的一个组件。
怎么啦?
?
我还试图安装旧版本的XCode辅助工具来尝试使用PackageMaker,但是即使安装了XCode 4.5,也找不到文档(我需要从命令行使用PackageMaker )。我不能用GUI工具手工构建包,因为在最终用户包中放置了唯一的资源库,手工构建太昂贵了。所以我寻找自动构建的方法。
发布于 2015-04-18 05:05:01
您缺少了--identifier参数。尝试:
pkgbuild --identifier MyIdentifier --root ./MyProgram.app \
--component-plist ./MyProgram.app.plist MyProgram.pkg 其中--identifier MyIdentifier是可以在系统中注册的唯一名称。
您可以通过以下方式选择遵循suffix.domain.project命名约定:
pkgbuild --identifier com.mydomain.MyIdentifier --root ./MyProgram.app \
--component-plist ./MyProgram.app.plist MyProgram.pkg 其中--identifier com.mydomain.MyIdentifier是可以在系统中注册的唯一名称。
https://stackoverflow.com/questions/28694963
复制相似问题