2011-11-17 48 views
4

我有一個使用spring框架構建的webapp。我試圖使用Eclipse將它部署到Tomcat6。每次我對jsp文件進行更改時,我都必須清理構建,發佈它,然後啓動服務器。我相信,我們不必爲JSP更改執行所有這些步驟。如果我只是發佈的文件,在服務器運行的時候,我得到了下面的異常java.lang.NoClassDefFoundError:org/springframework/web/context/ContextCleanupListener

SEVERE: Exception sending context destroyed event to listener instance of class org.springframework.web.context.ContextLoaderListener java.lang.NoClassDefFoundError: org/springframework/web/context/ContextCleanupListener

SEVERE: Exception sending context destroyed event to listener instance of class org.springframework.web.util.Log4jConfigListener java.lang.NoClassDefFoundError: org/springframework/util/Log4jConfigurer

而且戰爭的文件沒有得到部署在服務器上。

如果我對JSP文件&進行了更改,然後在eclipse中單擊重新啓動,它有時會發布文件&然後啓動服務器。但在某些情況下,它重新啓動服務器&然後發佈文件(在這種情況下,我得到了上述例外&戰爭文件沒有得到部署)。

它工作的理想方式是停止服務器,發佈內容&然後啓動服務器。我討厭每次做簡單的jsp更改都要這樣做。有沒有其他的一個點擊過程來做到這一點?

回答

0

您可以使用爆炸戰爭和增量熱部署。

這應該工作在2:30

1

http://www.youtube.com/watch?v=OMtcjgTyP-g

便接踵而來有一些錯誤的方式,你設置你的Eclipse項目或服務器。我建議按照說明here。此外,您可能需要下載STS(Eclipse已與Spring支持捆綁在一起),並使用它代替vanilla eclipse。

1

確保彈簧與您的應用程序一起部署。在eclipse中設置正確的導出選項,或將彈簧庫複製到/ WEB-INF/lib。

MyEclipse在這裏可以正常工作。您也可以檢查JRebel。他們宣傳沒有重新部署。 ;)