【问题标题】:How to create a .app warpper for a jar file using jar bundler that runs as root如何使用以 root 身份运行的 jar 捆绑器为 jar 文件创建 .app 变形器
【发布时间】:2013-08-27 23:53:16
【问题描述】:

我用 Java 为 Mac OS X 编写了一个应用程序。我想使用 Jar Bundler 将其转换为 .app。我需要这个应用程序以 root 身份运行。有没有办法让应用程序调用这样的密码提示对话框?

【问题讨论】:

    标签: java macos jar root


    【解决方案1】:

    是的,您可以使用 applescript。 原谅我,可能有更好的方法来做到这一点,但我就是这样做的(这样也更有趣)。

    这会运行一个 shell 脚本

    Process proc=Runtime.getRuntime().exec("shell-script-here");
    

    然后你进行下一步,像这样通过shell脚本运行一个applescript...

    Process proc=Runtime.getRuntime().exec("osascript -e 'applescript-here'");
    

    你必须非常小心反斜杠引号之类的......但是这一行应该提示密码对话框

    Process proc=Runtime.getRuntime().exec("osascript -e 'do shell script \"\" with administrator privileges');
    

    虽然这看起来令人困惑,但当我说 'do shell script \"\"' 的意思是什么都不做时,它仍然会提示输入密码。鉴于我不知道你的程序做了什么,你可以用任何 shell 脚本或其他东西替换它。聪明一点,我相信你可以找到一种方法来让你的程序工作。

    现在,我不能用勺子喂你答案,请记住,根据我的经验,如果你使用这种方法,任何错误都将是由于没有反斜杠引号之类的。

    【讨论】:

      猜你喜欢
      • 2012-04-10
      • 2014-09-26
      • 2014-07-25
      • 2018-07-02
      • 1970-01-01
      • 2020-12-19
      • 2020-11-16
      • 2013-03-21
      • 1970-01-01
      相关资源
      最近更新 更多