Java、Ada、C、および Python で記述されたバイナリのリストがあり、それらを実行したいと考えています。どうやってやるの?これらの言語への JVM バインディングはありますか?
質問する
14328 次
3 に答える
13
既存のアプリケーションを実行するだけの場合は、名前空間のexec
メソッドを使用できます。java.io.runtime
Runtime rt = Runtime.getRuntime();
Process ps = rt.exec("path to my executable.exe");
于 2010-05-04T14:00:18.140 に答える
3
はい。これを行う方法に関する優れたブログ記事へのリンクを次に示します: Running system commands in Java。
その要点は、次のことを行う必要があるということです。
// run the Unix "ps -ef" command
// using the Runtime exec method:
Process p = Runtime.getRuntime().exec("ps -ef");
ほとんどすべてのコマンドをそこに入れることができますが、私が遭遇した唯一の落とし穴は、JVM を実行している PATH のようなシステム環境変数に注意することです。
于 2010-05-04T14:00:40.417 に答える
2
バイナリ API とやり取りする場合は、次を使用します。
- Java Native Access (JNA) : DLL のロードと呼び出し用。
- Java Native Interface (JNI) : Java で C ライブラリをラップするため。
于 2010-05-04T15:18:04.210 に答える