问题标签 [productbuild]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2331 浏览

macos - 在哪里可以找到有关 MacOS 产品分发文件的信息?

Mac OS 的“productbuild”手册页讨论了一个分发文件:

但是我在任何地方都找不到有关分发文件中内容的信息。里面装的是什么东西?有它的参考页面吗?

0 投票
2 回答
10059 浏览

macos - Mac 应用商店产品构建

Apple 的关于向 Mac App Store 提交应用程序的文档包含使用 /Developer/usr/bin/ 中的命令 productbuild 的示例。

当我在我的示例应用程序上运行此命令时,我收到错误:

productbuild:错误:在“product_definition.plist”中找不到产品定义 plist。

这个product_definition.plist是什么,它应该来自哪里,里面应该是什么,应该使用什么工具来创建这个plist?

0 投票
2 回答
1789 浏览

macos - 无法安装使用 productbuild 创建的 OSX 包

我对整个 mac 开发和部署世界都很陌生。我试图创建一个 OSX 应用程序并使用 Itunes Connect 和应用程序加载器将其上传到应用程序商店。我正在使用 Mac OSX 版本 10.6.8

我已经使用以下代码对我的应用程序进行了代码签名:

然后我使用以下方法构建了一个安装程序包:

在 codesign 和 productbuild 期间,我没有收到任何错误,并且应用程序运行没有问题。

不幸的是,我无法安装该软件包。如果我使用以下命令在命令行中运行 pkg:

我得到以下输出:

该错误的意思是“提取包文件时出错......”

installer.log 中有关安装失败的条目:

我想这与 cpio 读取错误有关,但我在这里迷路了......

0 投票
1 回答
724 浏览

macos - 归档应用程序时出现mac应用商店productbuild错误

我使用 productbuild 归档我的应用程序以提交到应用商店。我在终端中运行这个命令:

但发生错误是:

0 投票
5 回答
170146 浏览

xcode - 制作已准备好开发人员 ID 的 macOS 安装程序包

注意:这仅适用于OS X 安装程序包,提交到Mac App Store的包遵循不同的规则。

由于 Mountain Lion 的Gatekeeper,我最终不得不将我的PackageMaker构建脚本带到谷仓后面并拍摄它。PackageMaker 已从 Xcode 中删除并移至“Xcode 辅助工具”,因此希望它很快就会被遗忘。

问题是如何使用pkgbuild,productbuildpkgutil替换它?

0 投票
1 回答
823 浏览

macos - Mac 安装程序包 (productbuild) 要求输入管理员密码,但不应该

我已经创建了一个带有 productbuild 的 pkg 安装程序包:

这工作得很好。但是,如果我尝试安装应用程序,它会要求输入管理员密码。但对于简单的应用程序,它并不需要它。这会使用户感到困惑。因此,我尝试通过使用 Flat Package Editor 打开 pkg 并将 PackageInfo 文件中的 auth="root" 更改为 auth="none" 来解决此问题。但它仍然要求输入管理员密码。为什么会这样,我该如何解决?我在 OS X 10.8 上。谢谢!

0 投票
1 回答
7484 浏览

macos - mac:如何使用 --component 选项将 License.txt 添加到使用 productbuild 构建的 pkg 中?

我们目前使用 productbuild --component 将我们的 mac 安装程序构建为 pkg 文件(根据以下帖子:Mac app store productbuild)。

这很好用,但我也希望在这个安装程序中添加一个许可证文件。

使用 packagemaker,您可以指定选项 --resources [path_to_resources_file]。如果您将 License.txt 放在指定的资源文件夹中,安装程序会神奇地包含一个许可步骤。

虽然 productbuild 的手册页也描述了 --resources 选项,但实际上这似乎不适用于 --component 选项。它似乎完全忽略了这个选项。

根据 productbuild 手册页, --component 选项显然只需要一个产品定义 plist(我查看了 plist 选项,似乎没有一个适用于许可证文件)、一个组件、一个可选的安装路径和一个输出路径. 尽管 --sign 选项也有效。

有谁知道在使用 productbuild --component 时是否可以(如果可以,如何)包含安装程序的许可证文件?

提前致谢。

伊恩

0 投票
1 回答
4245 浏览

macos - 如何使用 productbuild 构建具有自定义背景的 OS X 安装程序包?

我有一个项目依赖于现已弃用的 PackageMaker 工具来为 OS X 创建安装程序。我正在努力更新它以使用pkgbuildproductbuild。我正在尝试通过将--resources标志传递给productbuild包含背景图像的目录来向安装程序添加自定义背景。我没有从productbuild命令中得到任何错误,但是当我在 Pacifist 中打开包时,我根本看不到我的资源。我尝试在 中引用背景图像distribution.xml,但似乎没有什么不同。我不知道接下来要尝试什么来调试它。

0 投票
3 回答
1158 浏览

macos - 如何在我的 OS X 安装程序包中禁用备用卷的选择?

我正在为 OS X 准备一个安装程序包,但我不知道如何禁用询问用户要安装到哪个卷的屏幕。我希望它在/没有提示的情况下安装。

这是我构建软件包的方式:

pkgbuild--root build/staging/ --identifier xxxx --scripts InstallerOSX/resources/ --scripts InstallerOSX/scripts/ ${OBJROOT}/AgentPayload.pkg

产品构建--distribution InstallerOSX/distribution.dist --package-path ${OBJROOT} --resources InstallerOSX/resources/ ${BUILT_PRODUCTS_DIR}/AgentInstaller.pkg

这是我的分发文件

<domains>元素似乎没有起到作用......

0 投票
0 回答
1245 浏览

macos - 为卸载程序使用 OS X 产品构建

我的产品安装程序使用 pkgbuild 和 productbuild 运行良好。但是,现在我正试图弄清楚如何使我的安装程序也可以用作卸载程序。我可以通过修改我的 distribution.xml 文件为用户显示卸载选择,如下所示:

但是当他们选择卸载时,我需要我的安装后脚本以某种方式知道他们选择了哪个选项。我看不到安装后脚本有任何方法知道这一点 - 环境变量中没有任何内容可以表明这一点,也没有包含在传递给我的脚本的参数中。

我突然想到,我可以编写一个单独的卸载包,使用它自己的单独的安装后脚本,然后将它作为一个组件包含在我的整个产品中,但这似乎是很多额外的设置工作。

如果基于用户做出的安装选择存在细微的行为差异怎么办?我需要为每个选择制作一个单独的包组件吗?

是否有一个不需要额外组件包的好解决方案,或者我应该只制作单独的组件包以进行安装/卸载?