Spring 应用程序抛出错误和 WAR 未构建

我想将包部署到tomcat因此尝试扩展它SpringBootServletInitializer并发生以下错误但在没有任何错误的正常部署中SpringBootServletInitializer似乎没有错误。


我究竟做错了什么?


我的build.gradle文件看起来像这样


plugins {

    id 'java'

    id 'war'

}


group 'com.nithin.ms'

version '0.5.0'


sourceCompatibility = 1.8

targetCompatibility = 1.8


repositories {

    mavenCentral()

}


configurations {

    providedRuntime

}


dependencies {

    compile group: 'commons-io', name: 'commons-io', version: '2.4'

    compile group: 'org.apache.commons', name: 'commons-lang3', version: '3.8'

    compile group: 'org.springframework.boot', name: 'spring-boot-starter-web', version: '2.0.4.RELEASE'

    providedRuntime 'org.springframework.boot:spring-boot-starter-tomcat:2.0.4.RELEASE'

    testCompile group: 'junit', name: 'junit', version: '4.12'

}


慕码人8056858
浏览 142回答 2
2回答

萧十郎

我在使用 Tomcat 部署 spring-boot Web 应用程序时遇到了同样的问题。我通过添加具有提供范围的 servlet-api 依赖项解决了该问题。@Grab(group='javax.servlet', module='javax.servlet-api', version='3.1.0', scope='provided')部署您的应用程序后。在 WEB-INF 中,您将找到名为 lib-provided 的文件夹,其中包含其他 jar 和 servlet-api 一个。建议:提供的范围帮助您保留嵌入式 tomcat 的部署能力。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java