2011-07-28 85 views
0

我想完成的是啓動一個Java程序並讓它保持運行,直到用戶使用control-C殺死它。我意識到可以通過創建BufferedReader並在讀取BufferedReader時使其無限循環來做到這一點,但我正在做的事情涉及到將背後的Java程序(例如,java -jar app.jar &)該方法不起作用。我已經閱讀了一些關於Java的守護進程線程,但是我也不認爲在這個例子中這是正確的解決方案,因爲我想讓JVM保持活躍狀態​​。讓Java程序在沒有標準的情況下運行

任何幫助將不勝感激。

謝謝, 克里斯

+1

如果你背景它,用戶不能用CTRL-C打斷它...但是你可以使用kill ... – DoubleMalt

+1

你用這種方法試圖解決什麼問題?也許背景程序不是正確的解決方案?或者,也許有更好的方法來中斷程序比Ctrl-C? –

+1

你可以多說一些關於你如何「希望JVM保持活力」,從而排除守護進程的解決方案嗎?我想了解更多。 (我正要指向你[Apache Commons Daemon組件](http://commons.apache.org/daemon/),因爲我今天偶然看到了它,它成了我的錘子,你的問題看起來很多像一個釘子=) – Marvo

回答

0

我猜你是從一個不同的進程可能啓動java程序?潛在選項可能是將Java Service Wrapper?根據你在做什麼,許可可能是一個問題,你可能不會用ctrl-c殺死這個進程,但這是一個想法(除了上面給出的其他人之外)。

+0

真正的問題是當我背景程序時關閉的標準。我不相信Java服務包裝會對此有所幫助。 –

相關問題