Install4J技术问询:安装完成后能否自动推出DMG镜像?
解决Install4J安装后自动推出Mac DMG的方法
针对Install4J 9.0.7的Mac安装器,你可以通过添加后置脚本动作实现安装完成后自动推出DMG,步骤如下:
- 打开你的Install4J项目,切换到「屏幕与动作」面板
- 在安装流程的最后阶段(比如「安装成功」屏幕的后置动作列表中),点击「添加动作」,选择「运行脚本」
- 在脚本编辑器中输入以下Java代码:
if (Util.isMacOS()) { // 获取DMG挂载点:安装目录的上层目录即为挂载路径 File installDir = (File)context.getVariable("sys.installationDir"); String mountPoint = installDir.getParentFile().getParent(); // 执行hdiutil eject命令推出挂载卷 Process ejectProcess = Runtime.getRuntime().exec(new String[]{"hdiutil", "eject", mountPoint}); ejectProcess.waitFor(); }
- 保存并重新构建安装器
说明:
- 代码仅在macOS系统下执行,不影响Linux/Windows安装流程
sys.installationDir是Install4J内置变量,指向用户选择的应用安装目录,其上层目录即为DMG的挂载点hdiutil eject是Mac系统原生命令,用于推出挂载的磁盘镜像,无需额外权限
内容的提问来源于stack exchange,提问作者Lord Moon
相关产品推荐
相关产品推荐

