【问题标题】:Spring Initializr to create WAR for tomcat?Spring Initializr 为 tomcat 创建 WAR?
【发布时间】:2019-08-31 03:29:54
【问题描述】:

我想使用 Spring Initializr 为 tomcat 创建 WAR...
我们的 DevOps 仍然不习惯将 java 作为独立运行的想法,并且希望在 tomcat 中将应用程序作为 WAR

我能够制作一个项目,但它似乎在制作一个独立的 Spring Boot 应用程序

我仍然想使用 Spring Initializr 来生成所有依赖项,例如:

  • Rest 存储库
  • JDBC 模板
  • 石英
  • 休息

一种解决方案是在 eclipse 中创建一个动态 web 项目并使用 Spring Initializr 然后将所有 pom 依赖项复制到动态 web 项目中 有没有更好的办法?

【问题讨论】:

  • 选择More Options,在packaging部分将JAR改为WAR...
  • 也可以使用 maven 插件创建战争
  • 谢谢你 Deinum,但我如何才能得到 Eclipse 项目呢?
  • 只需要导入项目...没有比这更复杂的了。 Eclipse 将检测到它是一个战争项目这一事实,并使其成为一个 Web 项目。
  • 不,它不这样做。它不会将其创建为动态 Web 项目,也不会将其添加到 tomcat,我在此 stackoverflow.com/questions/55616337/… 上发布了一个新问题

标签: java spring tomcat spring-initializr


【解决方案1】:

要将可部署的war文件构建到外部容器中,您必须:

  • 重新配置您的项目以生成 WAR
  • 将嵌入式容器(Tomcat)依赖声明为provided

    <packaging>war</packaging>
    
    <dependencies>
        ...
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <scope>provided</scope>
        </dependency>
        ...
    </dependencies>
    

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-03-09
    • 1970-01-01
    • 2023-01-27
    • 2017-08-22
    • 2018-08-22
    • 2015-03-10
    • 2018-12-05
    • 2020-06-11
    相关资源
    最近更新 更多