java - 从 java 代码在 MAC OS 上运行 .pkg

标签 java macos

我正在尝试从我的 java 代码运行 .mpkg 应用程序:

public void runNewPkg(){

try {

           String command = "sudo installer -pkg Snip.mpkg -target /Applications";
            Process p = Runtime.getRuntime().exec(command);
            System.out.println(p.getErrorStream());
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }

And am getting the following error and my terminal window hangs..

java.lang.UNIXProcess$DeferredCloseInputStream@2747ee05
Password:
Sumit-Ghoshs-iMac-3:downloads sumitghosh3$ Password:
Password:
-bash: **********: command not found

Sumit-Ghoshs-iMac-3:downloads sumitghosh3$
  • 我认为我还需要提供密码才能从命令行运行 pkg 你能告诉我如何做到这一点吗?

最佳答案

您可以向 sudo 提供密码:

echo "p@sw0rd" | sudo -S cal -y 2011

上面的命令使用 root 权限运行“cal -y 2011”。

关于java - 从 java 代码在 MAC OS 上运行 .pkg,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5297647/

相关文章:

objective-c - 带有 2 个 nstextfields 的 controlTextDidChange - 调用不同的选择器

swift - 具有圆角的 CALayer 显示黑色或外国内容

java - 子包的spring aop表达式

java - 在Android导航架构中,如何从主机( Activity )调用目标 fragment 的方法之一

c# - 我应该学习特定于操作系统的语言还是 Java 之类的语言?

macos - 列出可使用 brew-cask 安装的应用程序

git - 更新 MacOSX 后 GPG 签署 Git 提交挂起密码输入

java - 将原始格式的数据发布到 PHP 文件并获取响应

java - EJB 不明确的依赖关系 : How to specify which class to Inject

java - 在 JVM 运行时重新加载类