PackageMaker的"包含root in package"选项实际上做了什么?

jjs*_*jjs 4 macos packagemaker

我正在为OS X应用程序制作安装程序,但无法理解PackageMaker的UI.我的PackageMaker版本是3.0.4,运行Lion和Xcode 4.1.

特别是一个选项让我感到困惑.编辑包的内容时,它是"包含根目录"复选框.根据是否已选中,我的某些包的内容永远不会安装在任何地方.

例如,假设我的内容是单个.app包,Confused.app.我想将它安装到/Applications(目的地).在这种情况下,"在包中包含root"究竟是什么意思?如果不加以检查,安装程序完全没有做任何事情,据我所见.

是否有更好的示例案例可以澄清选项的含义?

Gor*_*son 6

给出,其中(要安装即源项)有效载荷的情况下是Confused.app(这大概包含的Info.plist,MacOS的,资源等内部的一个子文件夹的内容),以及安装目的地是/应用:

  • 如果选中"在包中包含root"选项,它会执行您可能期望的操作,即将Confused.app安装到/ Applications中.
  • 如果您没有选中"包含root in root"选项,它会将Confused.app 的内容安装到/ Applications中 - 即您最终使用/ Applications/Contents文件夹.这可能是没有选项的测试.

禁用"包含根..."的预期用法是您在构建计算机上创建代理应用程序文件夹,将其指定为有效负载源,并将应用程序放入该文件夹中.如果你在一次安装多个应用程序,或安装到比其他地方这是比较有用/应用(即让代理根文件夹,创建应用程序和库/应用支持子文件夹,并设置安装目标为"/").