2010-09-16 39 views
0

我寫了一個名爲Automate.java的java程序,其中另一個名爲newsmail的java程序將被執行。用於更改命令提示符目錄的Java程序

我在這裏面臨的問題是,Automate.java是在桌面位置(應只在桌面總是由於一些要求)和newsmail是在/home/Admin/GATE521/LN_RB這個位置。

在下面的代碼之前必須做些什麼,以便命令提示自動進入所需的文件夾並執行程序。

String command = "java newsmail"; 
Process child = Runtime.getRuntime().exec(command); 
+0

您可以嘗試在您的類路徑中放置「/ home/Admin/GATE521/LN_RB」。但是我感覺這種整個方法非常奇怪和不尋常。 – crowne 2010-09-16 19:29:38

回答

5

您可以使用此exec()

Process child = Runtime.getRuntime().exec(command, null, new File("/home/Admin/GATE521/LN_RB")); 

資源:

+0

必須給命令字符串什麼?空? – LGAP 2010-09-16 19:32:01

+0

命令必須是被調用的可執行文件,第二個參數是傳遞給您的命令的參數列表。 (@查看鏈接) – 2010-09-16 19:37:39

3

使用新的ProcessBuilder類,而不是Runtime.exec()

ProcessBuilder pb = new ProcessBuilder("java", "newsmail"); 
pb.directory("/home/Admin/GATE521/LN_RB"); 
pb.start(); 

如果需要,您甚至可以看pb.environment()以更改環境變量。

相關問題