热部署能够实现文件的实时编译,当你的鼠标失去焦点事件被监听到时,idea就能立即将更改的部分进行编译,不用rebuild,不用重新运行,甚至连ctrl+s都用不到,可以说是非常方便!
网上的解决办法大多为以下几种:
①idea左上角File->settings:
②右上角edit configuration,勾选update classes and resources
③ctrl+shift+alt+/
进入后,找到这一条,打上对勾
如果看到这里,你的热部署还是不管用,就要考虑插件的原因了
④在pom.xml里添加如下两段代码:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
在build里插入:
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<fork>true</fork><!-- 如果没有该项配置,devtools不会起作用,即应用不会restart -->
</configuration>
</plugin>
</plugins>
再重启项目(invalidate cache and restart)
如果还不行,考虑安装JREBEL
⑤File->settings->plugins:
安装好后,按照向导进行配置:
这里一定要注意,电脑用户名一定要是英文名!否则会报错:
如果报这个错误,就说明你的用户名是中文名,需要将一些文件移到英文目录下:
将如下四个文件移动到自命名的英文目录下,再将对应的库文件目录配置修改就行了