2011-03-03 36 views
11

我正在尋找一個輕量級且簡單的servlet容器,用於快速開發。例如,我想編寫Java代碼,而不必每次重新編譯以查看瀏覽器中的更改。我不關心servlet能夠處理數千個併發請求,因爲我只需要將它安裝在本地Windows機器上,我將是唯一一個訪問它的人。用於開發的輕型Java servlet容器

我喜歡這種開發方式,這樣我就可以將我的戰爭上傳到具有更成熟的servlet容器(Tomcat等)的「活」servlet容器中。

這樣的事情是否存在?

回答

11

JettyJetty Maven plugin將成爲您的指示燈。

[編輯]
原始鏈接已死亡。更新爲新的jetty-maven-plugin主頁。

+0

謝謝,我會試試看。你能告訴我更多關於彙編的內容嗎?你可以改變一個.java文件,它會自動編譯它嗎?或者它是如何工作的? – 2011-03-03 21:30:58

+0

使用jetty maven插件,您可以對其進行配置,以掃描源目錄中的文件更改。然後,它會接受更改,編譯它,並將其熱插拔到您的應用程序中,或者將其配置爲執行任何操作。 – Jeremy 2011-03-04 00:26:03

+0

我已經配置了插件,但是當我對.java文件進行更改時似乎沒有自動部署。它適用於jsps /靜態的東西,但不適合我的Java文件。怎麼來的? – 2011-03-06 20:02:49

0

是的,這可以用Eclipse和WTP描述。 Eclipse會在每次保存時重建您的代碼並重新部署到(例如)tomcat或jetty。如果你碰巧在使用maven,也可以使用maven-jetty-plugin

但是如果您使用Jetty,關閉服務器並將其重新啓動的開銷非常小(> 1s)。如果你很樂意做到這一點,那麼你有更多的選擇可供你使用,如自定義構建腳本,maven-cargo-plugin

我最近已經開始嘗試保持一個長期運行的tomcat,轉動並殺死幾十人Jetty的實例,它工作正常。

編輯:當心,但Jetty和Tomcat有時會有不同的行爲。例如serving of static files via the default servlet

+0

「Eclipse」遠非如此你可以從「輕量級」中獲得。 – WhyNotHugo 2015-06-04 23:56:14

2

我知道的最輕量級的servlet容器是Jetty。我不知道任何提供類的自動重載的servlet容器,但您可以使用JRebel IDE插件來實現此目的。 JRebel不是免費的,但它很便宜,而且非常值得花錢。