如何在传统的tomcat webapps文件夹中部署spring boot MVC应用程序?

时间:2015-06-10 06:31:38

标签: java spring-mvc tomcat spring-boot

我在带有gradle示例的springboot springmvc之后创建了一个简单的spring mvc应用程序。enter image description here

以下是结构。 src / main / java - 这是所有代码库的所在。 src / main / resources - 这是所有资源/模板的所在。


    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;

    @SpringBootApplication
    public class Application {

        public static void main(String[] args) {         
            SpringApplication.run(Application.class, args);
        }

    }

只需编写上面的类并且零配置,我就可以启动spring-mvc Web应用程序(非常酷)。 (通过命令gradlew build和gradlew bootrun) 但是从传统的Web应用程序开发和部署背景来看,我想知道如何创建一个war文件并将其部署到tomcat webapps文件夹中。

另外,在哪里保留所有新资源(如js文件,css等)。我们通常会有一个WEB-INF文件夹,我们会保留它们,但是这里要做什么。

3 个答案:

答案 0 :(得分:1)

meskobalazs在构建 war 部署时回答了有关资源的问题(但请注意src/main/webapp未在 jar 部署中作为资源文件夹读取,在这种情况下你必须将它添加为资源)。

当您想将Spring-Boot应用程序更改为Web部署时,您基本上必须做两件事:

  • 将项目的包装从jar转换为war
  • 将嵌入式tomcat的依赖关系更改为

有关详细信息,请参阅Spring-Boot documentation site

答案 1 :(得分:0)

Spring Boot包含Tomcat容器。

您必须删除外部Tomcat才能部署项目

答案 2 :(得分:0)

如果您使用的是 Maven 项目,则需要修改 pom.xml ,以将打包为战争 ,如下所示

<packaging>war</packaging>

如果您使用的是 Gradle 项目,则需要按以下方式修改 build.gradle

apply plugin: 'war'

一旦构建项目,它将创建war文件,因此您可以轻松地将其部署在任何tomcat服务器的webapps文件夹中