来源:https://www.cnblogs.com/jiangbei/
作者:---江北
参考地址:www.cnblogs.com/coder-wzr
一、实现的方式概述
注意以下的热部署方式在IDEA是默认没有打开自动编译的,手动编译需要快捷键(Ctrl+Shift+F9),自动编译的修改配置如下:(注意刷新不要太快,会有1-2秒延迟)。
File-Settings-Compiler-Build Project automatically
二、spring-boot-devtools
在pom中直接引入依赖
<dependency>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-devtoolsartifactId>
<optional>trueoptional>
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.bootgroupId><artifactId>spring-boot-maven-pluginartifactId><dependencies><dependency><groupId>org.springframeworkgroupId><artifactId>springloadedartifactId><version>1.2.6.RELEASEversion>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里面(推荐shade插件)。
启动:
java -jar Demo-0.0.1-SNAPSHOT.jar
2.war形式
第一步:右键pom.xml点击Run as - > Maven clean,将原有的jar包或war包清除,然后在pom.xml中packing节点值修改为war,如下面加粗部分:
<groupId>com.examplegroupId><artifactId>DemoartifactId><version>0.0.1-SNAPSHOTversion><packaging>warpackaging>
第二步:在pom.xml中的dependencies节点里添加tomcat的如下依赖:
<dependency> <groupId>org.springframework.bootgroupId><artifactId>spring-boot-starter-tomcatartifactId>dependency>
第四步:pom.xml修改保存以后,项目会有红色叉出现,此时只要右键项目名,点击Maven - > Update Project,更新后红色叉叉即可消失。
第五步:打开启动类文件,如下添加橙色部分代码:
package com.wzr;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.support.SpringBootServletInitializer;
@SpringBootApplication
public class DemoApplication extends SpringBootServletInitializer{
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder.sources(DemoApplication.class);
}
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
第六步:右键pom.xml,点击Run as - > Maven install,然后刷新target就能看见已成功将项目打成war包,将war复制粘贴到Tomcat的webapps文件夹下,启动Tomcat即可。
推荐作品
● JavaWeb三个技术:Token、Cookie、Session
● 程序员写业务代码最容易掉的10种坑
● Github上10大优秀的开源后台控制面板
● 同事被裁,看着桌子上的行李,为他感到惋惜
● 2018年阿里巴巴关于java重要开源项目汇总
● Java中15种锁的介绍
● 10亿个数中找出最大的10000个数(top K问题)
● Jenkins+Git+Maven+Shell+Tomcat持续集成
● IntelliJ IDEA,酷炫插件系列,提高你的工作效率