我的問題是如何使用exec()或ProcessBuilder類在目錄中運行.class java文件。這隻適用於.class文件與java程序位於同一目錄中的情況。如何運行在另一個目錄中的.class文件
回答
你想產卵一個全新的過程?那麼你應該使用
Runtime.getRuntime().exec(new String[] {"java","-cp","/path/to/classes/dir/","com.foo.MyClass"});
如果你想在同一進程中的東西,你可以創建一個新的ClassLoader它知道如何加載你的.class文件。然後,您可以使用反射從類加載器中獲取類對象,並調用其「main」方法或類似的東西。您將需要使用反射,因爲該類在默認類加載器中不可用。
我遺漏了exec的一些參數,即用於設置類路徑的-cp(如果除了單個類文件外,還需要其他任何東西) – 2010-10-07 15:35:05
Java不是以這種方式啓動的。你需要給類路徑的絕對路徑,然後給出完全合格的類名稱。 Java不提供類文件。 – 2010-10-07 15:37:08
感謝馬克,更新我的例子 – 2010-10-08 03:39:48
問題解決了,大家好感謝您的答覆... :)
解決方案我已經使用
字符串路徑= 「d:\工作」; //我的程序執行的路徑
String program =「Test」; //我的程序名稱
ProcessBuilder pb = new ProcessBuilder(「java」,「 - classpath」,path,program);
如果您曾回到網站,您應該接受自己的答案。 – 2011-08-20 20:50:38
- 1. 在另一個目錄中運行源文件的jar文件
- 2. 如何運行另一個目錄中的exe文件!
- 3. 如何從另一個.class文件運行Java .class文件? (java的福利局)
- 4. 執行文件在另一個目錄
- 5. 如何在另一個目錄中通過Java Class讀取當前目錄中的文件
- 6. 如何在另一個目錄中編譯和運行Java類?
- 7. 如何在java中的另一個目錄中打開文件?
- 8. WordPress的 - 如何包括()一個文件,在另一個目錄
- 9. 在python中運行另一個目錄中的批處理文件
- 10. 如何從另一個Python文件中運行不在目錄中的Python文件?
- 11. JAR文件從另一個目錄運行?
- 12. 從另一個目錄運行`git commit`
- 13. 從另一個目錄運行build.xml ant
- 14. 如何在另一個目錄中執行* .cmd,就好像它正在當前目錄中運行一樣?
- 15. 如何將一個目錄中的第一個300行文件複製到另一個目錄?
- 16. 如何從另一個python文件運行一個python文件?
- 17. 在os.walk中間的另一個目錄中運行程序
- 18. 如何在同一目錄中運行.bat文件。
- 19. 如何使用ofstream在另一個目錄中寫入文件?
- 20. 如何將一個目錄中的大量文件從一個目錄移動到另一個目錄?
- 21. 如何計算在Linux目錄中運行多少個文件?
- 22. 如何添加從一個目錄複製到另一個目錄中增加的文件夾中的文件
- 23. 如何運行一個EXE文件依賴於另一個EXE文件運行
- 24. 如何將我的文件從一個目錄複製到另一個目錄?
- 25. 如何在java中的不同目錄中保存.class文件
- 26. 從一個目錄的文件複製到另一個目錄
- 27. NoClassDeffFoundError當從不同的目錄運行java.exe比.class文件
- 28. 如何從/向另一個目錄中的文件讀寫?
- 29. 如何將文件複製到cordva中的另一個目錄?
- 30. tar文件在一個目錄中,並將檔案放在另一個目錄
你認爲比使用exec()更簡單的選擇嗎?例如。將該類添加到類路徑中,並只導入/調用它通常的Java方式? – BalusC 2010-10-07 15:19:56