我只想知道,如果我使用maven作爲構建工具開發spring mvc項目,並且在創建war文件後部署該應用程序時,它是否會因tomcat而產生衝突?建立在maven上的項目是否會在tomcat版本之間創建運行時衝突?
更具體地說,讓我來問你一個例子:
在開發過程中,我想我有tomcat版本6.0.xx,並在生產服務器上,我想我有tomcat版本是6.x.x. 這會造成衝突嗎?
希望你有我的問題..
我只想知道,如果我使用maven作爲構建工具開發spring mvc項目,並且在創建war文件後部署該應用程序時,它是否會因tomcat而產生衝突?建立在maven上的項目是否會在tomcat版本之間創建運行時衝突?
更具體地說,讓我來問你一個例子:
在開發過程中,我想我有tomcat版本6.0.xx,並在生產服務器上,我想我有tomcat版本是6.x.x. 這會造成衝突嗎?
希望你有我的問題..
它可能。
通常,如果您依賴於Tomcat及其運行時環境中的版本,則需要將依賴項的範圍設置爲「提供」,如下所示,這意味着maven不會將其與您的應用程序:
<dependency>
<groupId>com.abc.xyz</groupId>
<artifactId>runtimepackage</artifactId>
<version>1.2.3</version>
<scope>provided</scope>
</dependency>
我最近遇到了不同版本的jetty這個問題。作爲使用碼頭6,同時部署到運行時環境中的另一封裝用碼頭8.
我使用碼頭8(因此servlet的API 3.0)模塊,並從HttpServletRequest對象調用getHeaders()。當我在當地跑步時,一切都很好。但是當調用deploy和getHeaders()時,NoSuchMethod異常會觸發。請注意,我隨後更改了本地設置,以便與環境更緊密地匹配並能夠重現問題。
希望是有道理的,並幫助
關於你在談論什麼樣的衝突?你能更具體地說... – khmarbaise 2012-02-17 13:59:27
我正在談論版本衝突 – 2012-02-23 11:37:03