いくつかの簡単なコードで外部プログラム(iTunesなど)を実行するための多くの調査を行ってきましたが、提案はうまくいかなかった。私の例ではJavaから外部プログラムを実行する(cmd、Windowsを使用)
try {
String name = (String) "start " + table.getValueAt(table.getSelectedRow(), table.getSelectedColumn());
ProcessBuilder p = new ProcessBuilder("cmd.exe", "cd /D %HOMEDRIVE%%HOMEPATH%/Desktop", "/c", name);
p.start();
} catch (Exception e) {
e.printStackTrace();
}
私はJTable
から外部プログラムの名前を取得し、この部分は正常に動作している: English: Unable to find "Discord". Be sure the name is written correctly and try again.
マイコードは以下の通りです:たまに何も時々私は、このエラーメッセージが表示されました、起こっていません。 ProcessBuilder
は、最初にディレクトリをデスクトップに変更しています。外部プログラムはstart <program name>
コマンドで実行する必要があります。このコードでは、上記のエラーメッセージが表示されます。
解決策がある場合は、ディレクトリをデスクトップに変更してください。
['ProcessBuilder#directory(File)'](https://docs.oracle.com/javase/8/docs/api/java/lang/ProcessBuilder.html#directory-java.io.File-)を参照してください。作業ディレクトリを設定するためのより良い方法 – MadProgrammer