Gradle Spring Boot项目在Tomcat中不起作用

Gradle Spring Boot项目在Tomcat中不起作用,gradle,tomcat7,spring-boot,embedded-tomcat-7,Gradle,Tomcat7,Spring Boot,Embedded Tomcat 7,我有一个使用Gradle依赖关系在Spring Boot中编写的简单示例应用程序。它在调用localhost:8080/问候语时显示helloworld。我将其打包为WAR,并将其作为myWebApp.WAR部署到Tomcat 当我打电话给localhost:8080/myWebApp/greetings时,我得到了404。我应该从下面的catalina.log推断什么 Sep 17, 2014 1:43:09 AM org.apache.catalina.core.StandardEngi

我有一个使用Gradle依赖关系在Spring Boot中编写的简单示例应用程序。它在调用localhost:8080/问候语时显示helloworld。我将其打包为WAR,并将其作为myWebApp.WAR部署到Tomcat

当我打电话给localhost:8080/myWebApp/greetings时,我得到了404。我应该从下面的catalina.log推断什么

  Sep 17, 2014 1:43:09 AM org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/7.0.54
Sep 17, 2014 1:43:09 AM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deploying web application archive D:\C813507\Tomcat7\apache-tomcat-7.0.54\webapps\cftsample.war
Sep 17, 2014 1:43:09 AM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(D:\C813507\Tomcat7\apache-tomcat-7.0.54\webapps\cftsample\WEB-INF\lib\tomcat-embed-core-7.0.54.jar) - jar not loaded. See Servlet Spec 3.0, section 10.7.2. Offending class: javax/servlet/Servlet.class
Sep 17, 2014 1:43:09 AM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(D:\C813507\Tomcat7\apache-tomcat-7.0.54\webapps\cftsample\WEB-INF\lib\tomcat-embed-el-7.0.54.jar) - jar not loaded. See Servlet Spec 3.0, section 10.7.2. Offending class: javax/el/Expression.class
Sep 17, 2014 1:43:13 AM org.apache.catalina.util.SessionIdGenerator createSecureRandom
INFO: Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [138] milliseconds.
Sep 17, 2014 1:43:13 AM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deployment of web application archive D:\C813507\Tomcat7\apache-tomcat-7.0.54\webapps\cftsample.war has finished in 4,385 ms

要在独立servlet容器中运行Spring引导应用程序,您需要告诉容器如何启动应用程序。您可以通过扩展
SpringBootServletInitializer
并重写
configure
方法来为应用程序提供配置类。这在中进行了描述

您通常会得到这样一个类:

@配置
@启用自动配置
公共类应用程序扩展了SpringBootServletInitializer{
//作为可执行jar或war启动时使用
公共静态void main(字符串[]args)引发异常{
SpringApplication.run(Application.class,args);
}
//部署到独立servlet容器时使用
@凌驾
受保护的SpringApplicationBuilder配置(SpringApplicationBuilder应用程序){
返回应用程序.sources(application.class);
}
}

谢谢,比Spring Boot自己的文档更清晰、更简洁!杰出的我发现很多人在第一次使用Spring boot时都有同样的问题。