E 'possibile eseguire i file binari in java?
Domanda
Ho una lista di file binari scritti in Java, Ada, C, e Python e voglio eseguirli. Come posso fare ciò? Sono vincolanti per queste lingue v'è alcuna JVM?
Soluzione
Se tutto quello che vogliamo fare è eseguire applictions esistenti, è possibile utilizzare i metodi exec
dal java.io.runtime
namespace.
Runtime rt = Runtime.getRuntime();
Process ps = rt.exec("path to my executable.exe");
Altri suggerimenti
Sì. Ecco un link ad un articolo di buon blog su come farlo: comandi di sistema in esecuzione in Java .
L'essenza di esso è che è necessario fare quanto segue:
// run the Unix "ps -ef" command
// using the Runtime exec method:
Process p = Runtime.getRuntime().exec("ps -ef");
Si può tranquillamente mettere qualsiasi comando in là, ma l'unica Gotcha che ho incontrato in essere a conoscenza delle variabili di ambiente del sistema, come il percorso che si esegue il JVM in.
Se si desidera interagire con l'API binario, uso:
- Java Native Access (JNA) :. Per il carico e di chiamata DLL
- Java Native Interface (JNI) :. Per il confezionamento di una libreria C in Java