当前位置: 首页 > 知识库问答 >
问题:

如何在DMG安装程序中创建一个Mac OS.app包和Chef Omnibus包

戎高爽
2023-03-14

我对Mac OS的了解非常有限,并且有一些关于DMG安装程序的问题。

我们有一个在Windows、Mac和Ubuntu上运行的应用程序。我们生成我们的安装程序为所有三个开放源码与厨师综合。

    null

我真的被困住了,所以我很感激你的指点。

这里是我们的distribution.xml文件,以备与这个问题相关时参考。它由Omnibus用于productbuild命令。我一直在研究扩展这个功能的选项,但与捆绑没有任何关系:

<?xml version="1.0" standalone="no"?>
<installer-gui-script minSpecVersion="1">
 <title><%= friendly_name %></title>
 <background file="background.png" alignment="bottomleft" mime- 
   type="image/png"/>
 <welcome file="welcome.html" mime-type="text/html"/>
 <license file="license.html" mime-type="text/html"/>

 <!-- Generated by productbuild - - synthesize -->
 <pkg-ref id="<%= identifier %>"/>
 <options customize="never" require-scripts="false"/>
 <choices-outline>
  <line choice="default">
   <line choice="<%= identifier %>"/>
  </line>
 </choices-outline>
 <choice id="default"/>
 <choice id="<%= identifier %>" visible="false">
  <pkg-ref id="<%= identifier %>"/>
 </choice>
 <pkg-ref id="<%= identifier %>" version="<%= version %>" 
    onConclusion="none"><%= component_pkg %></pkg-ref>
 <domains enable_anywhere="false" enable_currentUserHome="true" 
   enable_localSystem="false" />
</installer-gui-script>

共有1个答案

章琛
2023-03-14

我们的应用程序按应安装的方式安装

听起来您确实需要为您的发行版生成一个.app

.app是一种特殊的文件夹结构:

MyApp.app/
   Contents/
      Info.plist
      MacOS/
          executable
      Frameworks/
          library.dylib
      Resources/
          icon.icns
install_name_tool -change /opt/local/lib/library.dylib @rpath/library.dylib MyApp.app/Contents/MacOS/executable
install_name_tool -add_rpath @executable_path/../Frameworks MyApp.app/Contents/MacOS/executable

一些.dmg创建软件将执行更复杂的操作,如显示背景或需要最终用户许可协议。

 类似资料:
  • 我正在尝试使用为我的Java应用程序创建安装程序。我在Windows10上使用OpenJDK15.0.1。我应该能够使用 更新:我最初发布的问题发生在我使用--app image选项时,但它只使用基本命令。 这运行时没有错误,但生成的可执行文件无法完成。当我运行它时,一个窗口会短暂弹出并在我有时间阅读它之前消失,然后再也不会发生任何事情。它永远不会问“你想允许这个应用程序进行更改吗?”。然后,如果

  • 问题内容: 我正在将中型Java应用程序的构建从Ant迁移到Maven。我可以轻松迁移基本的构建内容,但是我也想从Maven构建中创建安装程序包。最简单的方法是通过Ant插件调用原始的Ant脚本,但我想也许我应该先看看Maven的支持。 我需要为不同的平台创建几个不同的安装程序: Windows 32/64位 Linux 32/64位 MacOS 32/64位 现在对于Linux,我认为我们只有一

  • Java运行时环境(OpenJDK 1.7 JRE) 脚本(.bat) 一个胖罐子 图标文件 一些文本文件 我不想使用系统的JRE,这就是我提供另一个JRE的原因。该脚本只使用几个参数调用JRE。图标文件为.ico格式。fat JAR是包含所有必需的Java类、本机库和资产(包括第三方库)的JAR。 我想允许最终用户安装、运行和卸载我的程序。我想在“开始”菜单中提供一个快捷方式来运行它,另一个快捷

  • 我使用jpack打包了我的java应用程序。当我使用打包的安装程序安装它时,安装后的目录始终是

  • 我想创建一个组件,它是一个具有自定义样式的DIV:背景色蓝色。在那之后,我想引用它并添加文本作为子对象。我正在尝试这样做: 包装器: 我是这样实例化的: 实例: 但它不起作用。我怎么能这样做?。非常感谢。

  • A package is a directory with some code and a package.json file that provides information to Yarn about your package. Most packages use some kind of version control system. The most common one is git