繁体   English   中英

Spring Boot部署战争

[英]Spring boot deploying a war

我正在尝试将具有Spring Boot 2.0.6和Java 8的Spring Boot应用程序部署到Ubuntu 18服务器上的Tomcat 8中以及Windows xampp上的tomcat 7中。 我读到最好的方法是创建一个war文件,将其放在webapps文件夹中,然后启动服务器。 我会这样尝试并使用tomcat的管理器应用程序。

为了配置tomcat服务器,我遵循了Ubuntu中tomcat 8的指南。

在这两种方法中,我都得到相同的结果,我可以在上传应用程序后在服务器中启动我的应用程序,但是如果我尝试在浏览器中编写路径或单击tomcat的管理器应用程序中的路径来访问它,但浏览器向我显示每次404错误。错误提示:所需的资源不可用。

昨天,我尝试下载示例战争并上传了它,它可以正常工作。 所以我想错误在于我发动战争的形式。

作为IDE,我正在使用Spring Tool Suit3。要进行战争,请按照以下步骤操作:

  1. 在主类上扩展了SpringBootServletInitializer。
  2. 在主类上添加SpringApplicationBuilder方法。
  3. 将位于我pom.xml中的my的内容从jar更改为war。
  4. 添加下一个依赖项:

     <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <scope>provided</scope> </dependency> 
  5. 右键单击项目>运行方式> Maven构建...

  6. 在显示“ Gloas”的输入中,编写“ package”。

不久后战争就爆发了。 我现在不知道这是否是正确的表格,但我唯一知道。 请问你能帮帮我吗?

这是带有示例代码的存储库的链接,该示例代码具有我要部署的配置: https : //bitbucket.org/josealvarezvivar/samplespring/src/master/

先感谢您。

你需要用战争收拾你的HTML页面如果没有的src / main /资源这可以帮助

嗨,如果您使用的是Spring Boot 2,则需要从webflux依赖项中排除netty react服务器,如下所示。

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-webflux</artifactId>
    <exclusions>
      <exclusion>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-reactor-netty</artifactId>
      </exclusion>
    </exclusions>
</dependency>

使用maven创建您的WAR文件,就可以了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM