<分区>
我需要从 Java 运行 sudo,我尝试了以下选项:
- Runtime.exec(“echo password | sudo -S”的每一种形式)。每种形式的命令都可以直接从终端成功执行,但尽管正确指定了程序路径,但不能从 java 执行
- ThreadExecutor 中的 ProcessBuilder,见 here
编辑 sudoers 和以 root 身份运行 Java 进程的选项对我的情况不可行。 是this真的是我唯一的选择,因为我真的想避免使用任何非标准库?
编辑:除了要求用户专门下载 SUDO GUI(kdesudo、gksu、cocoasudo 等)然后提供 java 路径之外,似乎没有其他办法解决这个问题。