[英]How to run c executable file from a java program in ubuntu
我無法從ubuntu中的Java程序運行c可執行文件。
我使用以下命令創建了可執行文件:
gcc ex.c -o process
在Java程序中,我嘗試了所有我能找到的,但沒有結果。
Runtime.getRuntime().exec("/home/cori/Desktop/process.exe);
另一種方法
Runtime rt = Runtime.getRuntime();
Process proc = rt.exec("process");
請提出建議。
* nix之類的系統不對可執行文件使用* .exe后綴。
Runtime.getRuntime()。exec(“ / home / cori / Desktop / process”)
應該工作正常。 但是我仍然沒有得到您想要得到的結果。 您只能從Process
類中獲得很少的流及其返回狀態。 對您來說, c
程序應為0。(如果返回0,則結束於源代碼的結尾)。
並且:您提到的兩種方法是相同的。 剛開始使用調用方法鏈接的方法:)
我假設您有權訪問C代碼,因為我看到您正在嘗試對其進行編譯。
您是否考慮過使用Java Native Inteface? Java允許您調用非Java代碼,通常稱為本機代碼。
您必須遵循一系列步驟才能使其正常工作。 在此處查看示例http://www3.ntu.edu.sg/home/ehchua/programming/java/JavaNativeInterface.html
這是一個漫長的過程,需要一些反復試驗才能使其正確。 但是,一旦您弄清楚了,它就是一個非常強大的工具。 這是Java的非常老的功能,因此在線上有很多資源。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.