如何在Runtime.getRuntime()。exec()的幫助下執行java程序。 例如,我們將java文件路徑設爲c:/java/abc.java。請幫我看看代碼。java中的運行時類
3
A
回答
1
你的意思是你想要一個Java程序來運行另一個Java程序。在這種情況下,This SO thread可能會有所幫助。
2
假設abc.java包含要執行的主要方法:
Runtime.getRuntime().exec("javac c:\java\abc.java -d c:\java\")
Runtime.getRuntime().exec("java c:\java\abc")
2
不要忘了:
- 您可能需要讀取一個java程序 的標準輸出/標準錯誤
您可能必須在執行您的java命令前設置/更新環境變量和PATH
創建過程:C:\ j2sdk1.4.0 \ BIN \ HelloWorld的誤差= 2
裝置的Win32的CreateProcess
回報2作爲錯誤代碼時它不能找到所指定的命令;更具體地說,當命令沒有在其查找路徑上引用可執行文件時。
查看此SO question可獲得更完整的「Runtime.getRuntime().exec()
」代碼,也可查閱this snippet。
此代碼創建一個shell(如在Runtime.getRuntime().exec("cmd /K")
中),其中您在sdtin
上編寫任何要執行的命令。
此方法的興趣在於重用shell進程以從前面的命令中受益:它執行'cd
',然後執行'dir
',後一命令將顯示由該命令引用的目錄的內容cd
命令。
對於PATH
設置也是如此,在使用javac
或java
之前。
0
請參閱過去被稱爲javaalmanac的優秀資源。
http://www.exampledepot.com/egs/java.lang/Exec.html
try {
// Execute a command with an argument that contains a space
String[] commands = new String[]{"grep", "hello world", "/tmp/f.txt"};
commands = new String[]{"grep", "hello world", "c:\\Documents and Settings\\f.txt"};
Process child = Runtime.getRuntime().exec(commands);
} catch (IOException e) {
}
2
您應該使用ProcessBuilder,而不是運行。基本用法如下:
Process process = new ProcessBuilder(command).start();
您可以在上面的鏈接中找到更多代碼。另見this question。
1
String path1 = "f://" + File.separator+username+File.separator+progName;
Runtime runtime = Runtime.getRuntime();
String command = "javac -classpath " + path + " " + path1;
System.out.println(command);
Process process = runtime.exec(command);
InputStream error = process.getErrorStream();
相關問題
- 1. 什麼是Java中的「運行時類」?
- 2. 運行Java類中的Hadoop
- 3. 相應的運行時類(java的)的
- 4. 運行時泛型類型的Java
- 5. 運行時的Java類路徑
- 6. 導入類時的Java運行代碼
- 7. 在Java運行時確定基類在運行時
- 8. 當tomecat服務器運行時,然後我的java類運行
- 9. NoClassDefFoundError運行時在Android Studio中的.AAR類中的運行時
- 10. Java運行時錯誤:util.scanner類
- 11. 在運行時更改java類
- 12. 確保運行時Java超類正確
- 13. 在運行時從wsdl生成JAVA類
- 14. Java:在運行時擴展類
- 15. Java在運行時加載外部類
- 16. java在運行時生成類文件
- 17. 在運行時創建任意Java類
- 18. Java,運行時類重新加載
- 19. Java調度 - 運行時類型
- 20. java泛型運行時類型
- 21. Java中,運行時錯誤
- 22. 運行編譯的Java類
- 23. 運行時錯誤:運行Java類文件
- 24. 包含Java類並在運行時運行它們
- 25. Java運行時ClassNotFoundException
- 26. Java運行時exec
- 27. 螞蟻在運行java類時從std中讀取時掛起
- 28. 運行時的Java Casting
- 29. 的Java ::在運行時
- 30. 運行時的Java註釋
的CreateProcess:C:\ j2sdk1.4.0 \ BIN \ HelloWorld的錯誤= 2 這是運行時異常消息 – Arun 2009-02-03 07:04:36