2016-04-19 206 views
2

我已經與春季啓動web應用程序和生成的WAR。 在發生戰爭之前,我已遵循this指示。我在部署在Tomcat 7.0.52,但我得到這個:春季啓動:部署WAR在Tomcat 7

信息: validateJarFile(/opt/devel/server/apache-tomcat-7.0.52/webapps/myapp/WEB-INF/ lib/tomcat-embed-el-8.0.32.jar) - jar沒有加載。請參閱Servlet規範3.0,第10.7.2節。違規類:的javax/EL/Expression.class 2016年4月19日11:48:28.579 WARN 27983 --- [IO-8080-EXEC-14] org.apache.catalina.deploy.WebXml:未知版本字符串[3.1 ]。默認版本將被使用。

我認爲這是由於servlet spec版本,但在上面的鏈接說,它支持3.0以及3.1(Tomcat 8)。如果我在Tomcat 8中部署我的應用程序,一切正常。

謝謝。

+3

Spring Boot支持兩種規格.. Tomcat 7不支持... –

回答

4

作爲M. Deinum提到的,Tomcat的7是使用3.0.x的SERVET的API。 Spring Boot默認使用3.1。要改變它,如果您使用的是較早的servlet和tomcat API,Spring Boot會理解這些Maven屬性:

<properties> 
    <tomcat.version>7.0.69</tomcat.version> 
    <servlet-api.version>3.0.1</servlet-api.version> 
</properties>