热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

SpringBoot中maven项目打成war包部署在liunx服务器上的方法

这篇文章主要介绍了SpringBoot中maven项目打成war包部署在liunx服务器上的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

说明:Spring Boot由于内嵌了如Tomcat,Jetty和Undertow这样的容器,也就是说可以直接跑起来,用不着再像Spring项目还需要外置的Tomcat等容器来进行部署工作了,通过启动启动类就可以建立独立的Spring应用程序。Spring Boot部署在服务器上主要分为两种方式:一是打成jar包发布,二是打成war包发布,第一种方式只需要在该服务器中运行java -jar+部署项目的名称就可以启动(不要忘了.jar后缀名),操作比较简单,第二种方式操作比较复杂一点,并且是项目发布的常用打包方法,本编博客主要说明打成war包的方式如何部署到服务器中。

一。pom.xml文件配置

1.第一步我们需要移除Spring Boot项目中内置的tomcat容器,并配置外部的tomcat容器:

 
  
    org.springframework.boot
    spring-boot-starter-web
    
      
        org.springframework.boot
        spring-boot-starter-tomcat
      
    
  


    
    
      org.springframework.boot
      spring-boot-starter-tomcat
      provided
    

2.第二步添加servlet依赖:


    
      javax.servlet
      javax.servlet-api
      provided
    

3.第三步将打包的方式改成war包:

war

4.第四步修改打包的项目名称,使用build标签下的finalName标签修改:

 
    
    ROOT
 

二。Spring Boot启动类配置:

该步骤有两种实现方式

1.第一种实现方式,启动类继承SpringBootServletInitializer类并重写configure方法:

@SpringBootApplication(exclude = WebAutoConfiguration.class)
public class GunsApplication extends SpringBootServletInitializer {

  private final static Logger logger = LoggerFactory.getLogger(GunsApplication.class);

  @Override
  protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
    // 注意这里要指向原先用main方法执行的Application启动类
    return builder.sources(GunsApplication.class);
  }

  public static void main(String[] args) {
    SpringApplication.run(GunsApplication.class, args);
    logger.info("GunsApplication is success!");
  }
}

2.第二种实现方式,新建一个类继承SpringBootServletInitializer类并重写configure方法:(注意:该类要放在与启动类一致的目录下)

public class GunsServletInitializer extends SpringBootServletInitializer {

  @Override
  protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
    return builder.sources(GunsApplication.class);
  }
}

三。使用Maven工具打包:

四。发布到liunx服务器中:

连接到服务器,将打好的war包tomcat安装目录下的webapps,启动tomcat,自动解析war包生成相应的文件夹,打开浏览器输入ip:(tomcat启动端口号)就可以进行访问了。(注意:在这个例子中我删除了webapps目录下原有的ROOT文件夹,并且把项目的名称改成了ROOT,所以直接用ip+端口号就能直接访问,但是如果不是这么操作的话,需要在端口号后面再加上项目的名称即可访问。)

到此这篇关于SpringBoot中maven项目打成war包部署在liunx服务器上的方法的文章就介绍到这了,更多相关Springboot项目打war包部署到Linux内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!


推荐阅读
  • 探讨如何真正掌握Java EE,包括所需技能、工具和实践经验。资深软件教学总监李刚分享了对毕业生简历中常见问题的看法,并提供了详尽的标准。 ... [详细]
  • 本文介绍如何在Linux服务器之间使用SCP命令进行文件传输。SCP(Secure Copy Protocol)是一种基于SSH的安全文件传输协议,支持从远程机器复制文件到本地服务器或反之。示例包括从192.168.45.147复制tomcat目录到本地/home路径。 ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 本文探讨了在Windows Server 2008环境下配置Tomcat使用80端口时遇到的问题,包括端口被占用、多项目访问失败等,并提供详细的解决方法和配置建议。 ... [详细]
  • 本文探讨了如何在日常工作中通过优化效率和深入研究核心技术,将技术和知识转化为实际收益。文章结合个人经验,分享了提高工作效率、掌握高价值技能以及选择合适工作环境的方法,帮助读者更好地实现技术变现。 ... [详细]
  • Android 九宫格布局详解及实现:人人网应用示例
    本文深入探讨了人人网Android应用中独特的九宫格布局设计,解析其背后的GridView实现原理,并提供详细的代码示例。这种布局方式不仅美观大方,而且在现代Android应用中较为少见,值得开发者借鉴。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 本文详细介绍了如何使用Spring Boot进行高效开发,涵盖了配置、实例化容器以及核心注解的使用方法。 ... [详细]
  • 本文介绍如何在 Unity 的 XML 配置文件中,将参数传递给自定义生命周期管理器的构造函数。我们将详细探讨 CustomLifetimeManager 类的实现及其配置方法。 ... [详细]
  • Hadoop入门与核心组件详解
    本文详细介绍了Hadoop的基础知识及其核心组件,包括HDFS、MapReduce和YARN。通过本文,读者可以全面了解Hadoop的生态系统及应用场景。 ... [详细]
  • 自己用过的一些比较有用的css3新属性【HTML】
    web前端|html教程自己用过的一些比较用的css3新属性web前端-html教程css3刚推出不久,虽然大多数的css3属性在很多流行的浏览器中不支持,但我个人觉得还是要尽量开 ... [详细]
  • PHP 时间与日期工具类:星座、干支、生肖的实现
    本文介绍了一个PHP时间与日期工具类,涵盖了时区设置、有效日期和时间检查、星座、干支、生肖计算等功能。该工具类特别适用于需要处理中国农历及西方星座的应用场景。 ... [详细]
  • 本文深入探讨了HTTP请求和响应对象的使用,详细介绍了如何通过响应对象向客户端发送数据、处理中文乱码问题以及常见的HTTP状态码。此外,还涵盖了文件下载、请求重定向、请求转发等高级功能。 ... [详细]
  • 本文介绍如何将自定义项目设置为Tomcat的默认访问项目,使得通过IP地址访问时直接展示该自定义项目。提供了三种配置方法:修改项目路径、调整配置文件以及使用WAR包部署。 ... [详细]
  • 云计算的优势与应用场景
    本文详细探讨了云计算为企业和个人带来的多种优势,包括成本节约、安全性提升、灵活性增强等。同时介绍了云计算的五大核心特点,并结合实际案例进行分析。 ... [详细]
author-avatar
爱你不愿放cwy
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有