私は、さまざまなラベルの値を生成するために 3 次 C プログラムを利用する GUI フロントエンドとなる Java プログラムを作成しています。
しかし、C プログラムへのパスをハードコーディングする必要はありません。Javaプログラムを実行したのと同じディレクトリにあるという前提で、JavaプログラムにCプログラムを実行させたいだけです(そうでない場合は、エラーメッセージプロンプトが表示されます)。
これまでプロセスビルダーを使用したことがないので、広範な例に感謝します:)
私は、さまざまなラベルの値を生成するために 3 次 C プログラムを利用する GUI フロントエンドとなる Java プログラムを作成しています。
しかし、C プログラムへのパスをハードコーディングする必要はありません。Javaプログラムを実行したのと同じディレクトリにあるという前提で、JavaプログラムにCプログラムを実行させたいだけです(そうでない場合は、エラーメッセージプロンプトが表示されます)。
これまでプロセスビルダーを使用したことがないので、広範な例に感謝します:)
現在の Java コードを含む jar のパスを取得する 1 つの方法は、次のとおりです (「THISCLASS」はクラスの名前です)。
URL jarURL = THISCLASS.class.getProtectionDomain().getCodeSource().getLocation();
String jarPath = jarURL.getPath();
File file = new File( jarPath );
jar ファイルへのパスを指定すると、java.io.File API を使用して、実行可能ファイルへの相対パスを移動できます。