Javaからsudoを実行する必要があり、次のオプションを試しました。
- Runtime.exec(「echopassword | sudo-S」のすべての形式)。コマンドのすべての形式は、ターミナルから直接正常に実行できますが、プログラムへのパスを正しく指定しているにもかかわらず、Javaからは正常に実行できません。
- ここに見られるように、ThreadExecutorのProcessBuilder
sudoerを編集し、Javaプロセスをrootとして実行するオプションは、私の場合は実行できません。非標準のライブラリの使用を本当に避けようとしているので、これは本当に私の唯一の選択肢ですか?
編集:これを回避する方法は、ユーザーにSUDO GUI(kdesudo、gksu、cocoasudoなど)を排他的にダウンロードしてから、javaへのパスを提供するように要求する以外にないようです。