2012-05-28 85 views
1

我正在開發一個具有更改系統日期和時間功能的GWT應用程序。爲了執行Linux的date命令(例如:date 052810242012)執行下面的線,但看到tomcat後凍結:更改日期和時間系統後Tomcat凍結

Runtime.getRuntime().exec(this.command); // where this.command is the date command 

我已經意識到,即使在應用程序啓動並運行,我改變系統日期和時間在終端中,無論如何它凍結了應用程序。

有人可以解釋爲什麼嗎?

+2

你有線程轉儲嗎? –

回答

1

首先,我認爲你想要執行的命令是一個只有根的命令,所以你必須確保你的應用程序的所有者是一個sudoer,並且它有權執行該命令。

二,Runtime.getRuntime().exec()提供了一個接口來執行JAVA的系統命令,但是直接在temina上執行是因爲它處理輸入和輸出本身,並且不會像終端那樣在屏幕上打印,所以你必須處理在JVM或命令的結果將命令寫入一個可執行的shell腳本沒有輸出,並呼籲 Runtime.getRuntime().exec(sudo","./a.sh"};

最後,當您更改端子短引線的日期和時間凍結的應用程序你提到的問題,我從來沒有見過這個。你能解釋一下它的細節嗎?