OS X Mavericks无法安装扁平化软件包

3
我有Mavericks 10.9.4操作系统。我使用pkgbuild和productbuild创建了一个flat package并尝试安装它。一切都很顺利,界面显示包已成功安装,日志中也没有显示任何错误。但是,该包并未被安装。我搜索了文件,但在系统中无法找到它们,因此这是指定位置的问题。禁用Gatakeeper也没有帮助。在命令行中使用installer既不会安装软件包,也不会显示任何问题。
另外,“pkgbuild --analyze”生成一个空属性列表。
我从互联网上下载了MacPorts软件包(.pkg)并尝试安装,结果一样。
我安装bundle-stype软件包时没有任何问题。
1个回答

1
今天我在测试我打包的几个平面包安装时遇到了同样的问题: /Library、/System和/usr的内容已经正确安装,但/Applications里什么也没有!!! 幸好有一个工作正常的软件包让我找到了解决方法:我必须指定一个“空”的component.plist以确保安装程序正常运行...
这是使用pkgbuild --analyze生成的component.plist文件。
工作包:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <array/>
</plist>

无法工作的软件包:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <array>
     <dict>
        <key>BundleHasStrictIdentifier</key>
        <true/>
        <key>BundleIsRelocatable</key>
        <true/>
        <key>BundleIsVersionChecked</key>
        <true/>
        <key>BundleOverwriteAction</key>
        <string>upgrade</string>
        <key>RootRelativeBundlePath</key>
        <string>Applications/MyApp.app</string>
    </dict>
  </array>
</plist>

使用--component-plist指定工作组件的plist,在pkg构建组件时,就能解决问题:现在所有的.pkg都可以正常工作。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接