Java 调用 Python 脚本卡在 sudo 密码提示符上

发布于 2024-11-30 21:04:42 字数 465 浏览 1 评论 0原文

我正在开发一个在后台调用 python 脚本的 Java 应用程序。

这是我调用 python 脚本的方式:

Runtime r = Runtime.getRuntime();
Process p = r.exe("/path/to/Python/script.py");

我可以看到我的 python 脚本使用 ps 在后台运行。

该脚本需要 root 权限,因此 sudo 会提示输入密码。

我已经看到了 2 个解决方案:

  1. 导入 Python 模块 pExpect 并在显示时填写 sudo。
  2. 将 jython java 模块添加到我的库中。

它们都是我的应用程序的开销,我不需要与脚本交互,我只是希望它在后台运行。

有没有办法在 UI 中弹出 SUDO,以便用户进行交互并继续?

谢谢。

I am developing a Java application that calls a python script behind the scene.

This is the way i call my python script:

Runtime r = Runtime.getRuntime();
Process p = r.exe("/path/to/Python/script.py");

I can see that my python script running in the background using ps.

The script requires root privileges so sudo prompts for password.

I have seen 2 solutions for this:

  1. Import Python Module pExpect and fill sudo as it shows up.
  2. Add jython java module to my library.

Both of them are overhead to my application, i don't need to interact with the script, i just want it to run in the background.

Is there a way to pop SUDO in UI, so user will interact and continue?

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

穿透光 2024-12-07 21:04:42

使用 gksudo 代替 sudo。它会自动弹出一个窗口,要求输入密码。

Use gksudo in place of sudo. It automatically pops up a window asking for the password.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文