SpringBoot项目打包部署

1. jar包部署

  • 添加一个插件

    <!-- 打包插件 -->
    <build>
    <plugins>
    <plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    </plugin>
    </plugins>
    </build>
  • 这种使用SpringBoot内嵌的Tomcat进行部署。SpringBoot在不指定打包的时候默认jar包形式

    <packaging>jar</packaging>
  • 使用命令启动部署

    java -jar xxx.jar

注意存在第三方jar的情况

2. war包部署

  • 添加插件如上

  • 打包方式修改为war

    <packaging>war</packaging>
  • 添加tomcat插件,spring boot本身有一个内嵌的tomcat,如果不做其他配置直接打包,就会生成一个jar包。 所以我们引入外部tomcat

    <!-- 外部 tomcat -->
    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-tomcat</artifactId>
    </dependency>
  • 在启动类中做如下配置,继承SpringBootServletInitializer,重写configure方法

    @SpringBootApplication
    public class MyApplication extends SpringBootServletInitializer { public static void main(String[] args) {
    SpringApplication.run(MyApplication.class, args);
    } @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
    return builder.sources(MyApplication.class);
    }
    }
  • 打包(war)

    • 切换到项目所在路径,使用命令 mvn clean package
    • 使用IDE工具,例如IDEA自带打包工具
  • 部署,拷贝war包到tomcat的webapps路径下,启动tomcat

注意:这种war包方式端口号使用tomcat的,项目名使用war包的名字,对于application.yml配置文件里指定的端口号和项目名会覆盖掉。

注意第三方jar的情况

使用maven的打包插件,打包方式还是如上。

<build>
<!--设置maven-war-plugins插件,否则外部依赖无法打进war包 -->
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<webResources>
<resource>
<directory>src/main/resources/jar/</directory>
<targetPath>WEB-INF/lib</targetPath>
<filtering>false</filtering>
<includes>
<include>**/*.jar</include>
</includes>
</resource>
</webResources>
</configuration>
</plugin>
</plugins>
</build>

注意:打包插件不能再用springboot提供的

SpringBoot打包部署简单说明的更多相关文章

  1. springboot 打包部署

    springboot内置有tomcat所以我们测试的时候没有加入自己的容器 那么我们的 springboot 怎么发布呢? 1.打成 jar 2.打成 war 这种方式我就不说了,网上有教程,我觉得j ...

  2. springboot打包部署到tomcat

    一. springboot打成war包: 1. 首先查看是否为war 2. File----->ProjectStruture,选择Artifacts,中部点击“+”号 3. 按图中标记进行选择 ...

  3. SpringBoot简单打包部署(附工程)

    前言 本文主要介绍SpringBoot的一些打包事项和项目部署以及在其中遇到一些问题的解决方案. SpringBoot打包 在SpringBoot打包这块,我们就用之前的一个web项目来进行打包. 首 ...

  4. springBoot 利用Idea打包部署

    springBoot 打包部署 1 项目如图: 2 依赖打包插件 3 打包操作 4 运行项目:

  5. springboot(十二):springboot单元测试、打包部署

    单元测试 1.在pom包中添加spring-boot-starter-test包引用 <dependency> <groupId>org.springframework.boo ...

  6. Springboot入门5-项目打包部署(转载)

    前言 本文主要介绍SpringBoot的一些打包事项和项目部署以及在其中遇到一些问题的解决方案. SpringBoot打包 在SpringBoot打包这块,我们就用之前的一个web项目来进行打包.首先 ...

  7. SpringBoot基础学习(一) SpringBoot概念、简单案例实现、单元测试及热部署讲解

    SpringBoot概念 Spring优缺点分析 Spring优点 Spring是Java企业版(Java Enterprise Edition,JEE,也称J2EE)的轻量级代替品,无需开发重量级的 ...

  8. linux小白成长之路9————打包部署SpringBoot项目

    [内容指引] SpringBoot项目介绍: 打包SpringBoot项目: 1.pom.xml: 2.application.properties配置: 3.application-dev.prop ...

  9. SpringBoot项目如何进行打包部署

    springboot的打包方式有很多种.有打成war的,有打成jar的,也有直接提交到github,通过jekins进行打包部署的.这里主要介绍如何打成jar进行部署.不推荐用war,因为spring ...

随机推荐

  1. Spring_AOP基于AspectJ的注解开发&JDBC的模板使用&事务管理(学习笔记3)

    一:AOP基于AspectJ的注解开发 1,简单的实例: 1)引入相应的jar包 ​ 2)在配置文件里引入相关约束 <beans xmlns="http://www.springfra ...

  2. apache自动打包日志脚本

    #!/bin/bash # apachedata=$(date +%Y%m%d) time=$(date +%Y%m%d%H --date='1 hour ago') cd /logs/apache/ ...

  3. 上车时机已到--.NETCore是适应时代发展的雄鹰利剑

    上车时机已到--.NETCore是适应时代发展的雄鹰利剑 要起飞了 .NET Core 3.0-prevew7:https://dotnet.microsoft.com/download/dotnet ...

  4. nodejs 如何自动化配置环境参数

    应用场景: 最近用 node 重构了网站的项目,部署到测试环境的时候测试一切正常. 直到有一天,运维把代码上线到内测环境的时候...... 突然发现:内测环境和测试环境竟然是同一台服务器,只不过是把代 ...

  5. Pivotal:15分钟部署你的应用

    “ 本篇文章介绍的是PaaS平台Pivotal Cloud Foundry(以下简称PCF)的初步使用,相比于传统的IaaS平台(比如阿里云),PCF可实现快速迭代开发与部署,让您专注于业务开发.” ...

  6. JSP第一章动态网页的基础

    什么是动态网站(dynamic website)? 动态网站: 误区:初学者一般认为动态网页,就是会动的网页,但实际上不是这样的. 动态网页是指在服务器端运行的,使用程序语言设计的交互式网页,它们会根 ...

  7. vue通信、传值的多种方式(详细)

    转载自https://blog.csdn.net/qq_35430000/article/details/79291287

  8. python基础之变量与数据类型

    变量在python中变量可以理解为在计算机内存中命名的一个存储空间,可以存储任意类型的数据.变量命名变量名可以使用英文.数字和_命名,且不能用数字开头使用赋值运算符等号“=”用来给变量赋值.变量赋值等 ...

  9. css3加js做一个简单的3D行星运转效果

    前几天在园子里看到一篇关于CSS3D行星运转的文章,原文在这里,感觉这个效果也太酷炫了,于是自己也就心血来潮的来尝试的做了一下.因为懒得去用什么插件了,于是就原生的JS写,效果有点粗超,还有一些地方处 ...

  10. Unity学习--捕鱼达人笔记

    1.2D模式和3D模式的区别,2D模式默认的摄像机的模式是Orthographic(正交摄像机),3D模式默认的摄像机的模式是Perspective(透视摄像机).3D会额外给你一个平衡光.3D模式修 ...