springboot热部署(二)——springboot热部署与发布

一、实现的方式概述

  

  注意以下的热部署方式在IDEA是默认没有打开自动编译的,手动编译需要快捷键(Ctrl+Shift+F9),自动编译的修改配置如下:(注意刷新不要太快,会有1-2秒延迟)

File-Settings-Compiler-Build Project automatically

二、spring-boot-devtools

  在pom中直接引入依赖

<dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-devtools</artifactId>
        <optional>true</optional>
</dependency>

  设置以下两项(第一项如已设置直接设置第二项)

  1) “File” -> “Settings” -> “Build,Execution,Deplyment” -> “Compiler”,选中打勾 “Build project automatically” 。

  2) 组合键:“Shift+Ctrl+Alt+/” ,选择 “Registry” ,选中打勾 “compiler.automake.allow.when.app.running” 。

  之后直接正常run即可!

三、spring-loaded

    在Plugins中添加依赖

<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <dependencies>
                    <!-- spring热部署 -->
                    <dependency>
                        <groupId>org.springframework</groupId>
                        <artifactId>springloaded</artifactId>
                        <version>1.2.6.RELEASE</version>
                    </dependency>
                </dependencies>
            </plugin>
        </plugins>
    </build>

  // 如果依赖提示not found,先在上面写让maven下载下来,再移到Plugin里面来

   命令行窗口启动

     找到pom.xml的路径,IDEA的话打开Pom后在标签页鼠标悬停即可看到,或者在pom上右击->file Path

    在这个路径下打开cmd窗口(win下可以通过shift快速在对应路径打开),输入启动命令

mvn spring-boot:run

    这样就可以在IDE里修改代码实现热加载了!

    还有一种复杂的方式是通过启动参数指定jar包的位置,感觉更加复杂,暂不赘述,可以参考:这里

四、发布spring-boot程序

  1.jar形式

    通过maven直接INSTALL,把项目打包并且相关的依赖也打到同一个jar里面,maven的生命周期,参考这里

    

    启动:

 java -jar Demo-0.0.1-SNAPSHOT.jar 

  2.war形式

    参考:https://www.cnblogs.com/gdpuzxs/p/7224959.html?utm_source=itdadao&utm_medium=referral

      https://www.cnblogs.com/coder-wzr/p/7860778.html   

  注意:context-path与warName一致

原文地址:https://www.cnblogs.com/jiangbei/p/8439394.html

时间: 2024-10-09 06:49:16

springboot热部署(二)——springboot热部署与发布的相关文章

spring-boot项目的docker集成化部署(一)

目录 spring-boot项目的docker集成化部署 前言 基本思路与方案 基本步骤 准备源码 服务器和基础环境 结语 1. 本文总结: 2. 后期优化: spring-boot项目的docker集成化部署 前言 据说流行的微服务和docker一起,更配哦!接下来,使用简单spring-boot项目演示docker的集成化部署的案例,在看过微笑的博客觉得不过瘾,自己动手,下面的方案与Devops的方式比较接近:希望搭建理解这种思路. 基本思路与方案 开发者push到git服务器 Jenkin

SpringBoot整合Ant Design Pro进行部署

一.Ant Design Pro 打包 1.1 运行 build打包 $ npm run build 1.2 将打包生成的静态文件拷贝到spring boot 项目中 构建打包成功之后,会在根目录生成 dist 文件夹,然后将dist 文件夹里的的文件复制到 spring boot 项目的 /src/main/resources/static 目录下 二.配置spring boot 项目可访问到static目录下的index.html 2.1 以gradle为例导入spring-boot-sta

docker-compose 部署 Vue+SpringBoot 前后端分离项目

一.前言 本文将通过docker-compose来部署前端Vue项目到Nginx中,和运行后端SpringBoot项目 服务器基本环境: CentOS7.3 Dokcer MySQL 二.docker-compose 部署Vue+SpringBoot 前后端分离项目 整体项目配置结构,这里在不影响原来项目的结构,因此将所有配置文件都提出来存放到docker文件夹内了,但注意docker-compose文件须放到项目总的根目录下哦! 1.新增后端所需配置文件api-Dockerfile # 指定基

Docker入门-docker运行springboot应用(二)

环境准备 jdk8 安装docker 镜像加速器配置 docker私有仓库 springboot工程的jar包 docker部署项目 dockfile Dockfile是一种被Docker程序解释的脚本,Dockerfile由一条一条的指令组成,每条指令对应Linux下面的一条命令.Docker程序将这些Dockerfile指令翻译真正的Linux命令.Dockerfile有自己书写格式和支持的命令,Docker程序解决这些命令间的依赖关系,类似于Makefile.Docker程序将读取Dock

Exchange 2010(二)HUB NLB部署

Exchange 2010(二)HUB NLB部署 架构如下 主域控:DCS-01                            192.168.2.20 辅域控:DCS-02                            192.168.2.21 证书服务器:CER-01                    192.168.2.31 客户端访问服务器01:  CAS-01    192.168.2.23  CASArray:22 客户端访问服务器02:  CAS-02    

Exchange 2010(二)MBX DAG部署

Exchange 2010(二)MBX DAG部署 架构如下 主域控:DCS-01                            192.168.2.20 辅域控:DCS-02                            192.168.2.21 证书服务器:CER-01                    192.168.2.31 客户端访问服务器01:  CAS-01     192.168.2.23  CASArray:22 客户端访问服务器02:  CAS-02  

单点登录CAS使用记(二):部署CAS服务器以及客户端

CAS-Server下载地址:https://www.apereo.org/projects/cas/download-cas CAS-Client下载地址:http://developer.jasig.org/cas-clients/ CAS官方教程: https://wiki.jasig.org/display/CASUM/CAS+on+Windows+Quick+Setup+Guide 版本: CAS Server版本:cas-server-3.4.11 CAS Client版本:cas-

jenkins+maven +svn+tomcat7集群部署(二)

第二篇主要讲对svn的安装和jenkins的集成 大家用yum 进行安装吧,上次弄了一天下了个最新版的svn其实并不好用,直接 yum install subversion 先来配置一下svn的配置,首先建立仓库 mkdir /home/svn svnadmin create  /home/svn/ceit cd /home/svn/ceit/conf conf这个文件夹下主要是一些svn的配置,可以在这里面配置一些成员和项目组人员,之前我建立了一个叫做ceit的仓库,那我就主要是针对这个仓库的

纯手工搭建kubernetes(k8s)1.9集群 - (二)核心模块部署

1. 部署ETCD(主节点) 1.1 简介 ??kubernetes需要存储很多东西,像它本身的节点信息,组件信息,还有通过kubernetes运行的pod,deployment,service等等.都需要持久化.etcd就是它的数据中心.生产环境中为了保证数据中心的高可用和数据的一致性,一般会部署最少三个节点.我们这里以学习为主就只在主节点部署一个实例. 如果你的环境已经有了etcd服务(不管是单点还是集群),可以忽略这一步.前提是你在生成配置的时候填写了自己的etcd endpoint哦~

SpringBoot入门 (十二) 定时任务

本文记录在SpringBoot中使用定时任务. 在我们的项目中,经常需要用到定时任务去帮我们做一些事情,比如服务状态监控,业务数据状态的更改等,SpringBoot中实现定时任务有2中方案,一种是自带的,我们只需要加上注解即可:另一种是集成Quartz来实现定时任务. 一 SpringBoot 提供的定时任务 在SpringBoot的starter包中已经提供了对定时任务的支持,我们很容易实现定时任务.修改pom.xml文件,加入如下内容,引入依赖: <dependency> <grou