【问题标题】:What is the difference between pkgbuild vs productbuild?pkgbuild 与 productbuild 之间有什么区别?
【发布时间】:2023-02-17 22:14:35
【问题描述】:

我正在尝试为 macOS (Monterey) 上的 CLI 创建一个 .pkg 安装程序。我遇到过pkgbuildproductbuild

它们已经安装在我的 Mac 上。

我在哪里可以详细了解这些 CLI 的作用? (不仅是如何使用)。

两者有什么区别?


我从这个堆栈溢出线程中遇到了它们: Making macOS Installer Packages which are Developer ID ready

【问题讨论】:

    标签: xcode macos command-line-interface pkgbuild productbuild


    【解决方案1】:
    • pkgbuild 构建 macOS 安装程序“组件包”. A组件包包含要由 macOS 安装程序安装的有效负载。在整个手册页中,组件包也称为“包裹”.虽然组件包可以单独安装,但通常会合并到“产品档案”,连同分发文件和本地化资源,使用productbuild

    • productbuild建立一个“产品档案”适用于 macOS 安装程序或 Mac App Store。 A产品档案也是macOS Installer要使用的文件,不过是can contain multiple组件包待安装。并且通过使用productbuild 创建产品存档,您可以添加元素来为用户定制安装过程(例如您自己的文本、许可协议、本地化资源、徽标等)。您将看到产品档案也称为“分发包” 1 2“安装程序包” 3.如果您想将捆绑包/应用程序上传到 Mac App Store,则需要使用 productbuild 为它创建一个产品存档,而不仅仅是使用 pkgbuild

    令人困惑的输出文件(组件包产品档案) 的两个命令都具有相同的扩展名 (.pkg)。但是你可以通过查看内容找到更多关于 .pkg 的信息,你可以通过右键单击它并选择显示包装内容或者通过运行pkgutil --expand my-package.pkg path/to/expand4

    希望其中一些链接能为您提供更多关于这些命令的作用的阅读材料。 This 博文详细介绍了如何使用这两个命令,this 是一篇很好的博文,概述了如何使用这些命令为 macOS 应用程序创建自定义 .pkg 安装程序。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-03
      • 2018-01-29
      • 1970-01-01
      • 2023-01-18
      • 2017-08-20
      相关资源
      最近更新 更多