0

我正在使用 Mac 10.8 和最新版本的 Package Maker。我的产品目标路径(安装位置)包含我们的产品版本。

Eg. Test/1.1.0.1/Sample.

我们已计划使该过程自动化。我们将增加每个自动化的内部版本号。所以我需要在每个自动化中更改目标路径中的版本号。我正在使用以下命令使用终端制作包。

PackageMaker –v –d Test.pmdoc –o TestSample.pkg

是否有任何选项可以从此参数传递版本号?我们应该使用预安装脚本来实现它吗?如果 Preinstall Scripts 有任何选项,请提供相同的示例,因为我是 shell 脚本的新手。请帮我解决这个问题。

4

2 回答 2

1

我个人发现这样做更容易:

  • 从公共位置复制包文件夹(即/project-redist-master)
  • 根据需要修改包内容(见下文)
  • 创建包

如果您需要更多个性化,例如包某处的版本号,我发现简单的搜索和替换字符串最方便。例如,您可以写入___PROJECTVERSION___使用版本号的任何文本或资源文件(即 pmdoc)。然后,在创建包之前,运行一个小工具(bash 脚本,我个人更喜欢编写 Cocoa 命令行工具)来搜索和替换这些占位符字符串。该工具还会从某个地方获取版本字符串,例如 version.h 标头或源代码管理中的更改列表编号。

于 2012-09-12T21:11:44.923 回答
0

PackageMaker 总是有问题,并且在 Mac OS X 10.6 Snow Leopard 中被弃用。

我建议将pkgbuild 与 productbuild 一起使用

于 2012-09-18T20:40:22.470 回答