1
Goooogle 2020 年 12 月 24 日
Intellij 有个 JRebel 插件,基本符合你的需求
|
2
Oktfolio 2020 年 12 月 24 日
spring-boot-devtools
|
3
tinyuu 2020 年 12 月 24 日
|
4
tydl 2020 年 12 月 24 日
|
5
asanelder OP |
6
tydl 2020 年 12 月 24 日
使用插件就一步,编辑代码,ctrl+s 。
|
7
itechify PRO 你甚至不需要任何插件,只需要 Ctrl +Alt +F9
|
8
lff0305 2020 年 12 月 24 日
#5 这种 Jdk 自带的 Hot-Reloading 是有限制的,只能 reload 方法体的修改,不能添加删除方法参数,修改参数类型返回类型,不能添加删除 property; 而且在一个 app 里面有时候光 reload 这个 class 是不够的,还要 reload 这个 class 的依赖,调用 @PostConstruct 等等等。所以 Jdk 自己的 Reloading 只能处理很少一部分情况
要解决这个问题还是需要 JRebel(要钱)或者 DCEVM(开源),他们补充了 Hot-Reloading,能够在修改了方法参数等等的时候 Reload,同时带了插件,能够计算 Reload 这个 class 之后还要做哪些活 当然有些时候还是有问题,就只能重启 不过现在 Java 大部分都是 microservice 那一套,启动没几秒钟,不像十年前全是启动好几分钟的重型应用,对 reloading 的需求没有那么强 |
9
asanelder OP @lff0305 #8 感谢铁子细心回复。
今天俺试了一下 Jdk 的 hot-reloading, 确实功能有限。JRebel 也要钱,而且感觉不太明白原理,所以也不太想用。 现在还是使用 jenkins 来自动部署了,虽然有些麻烦,忍了。 spring-devtool 不知为啥,修改源码后要过十几秒才自动重启,感觉也不方便 |
10
AllanAG 2020 年 12 月 24 日
JRebel 插件加上设置 idea 失去窗口焦点自动更新类和资源,写完代码再点击浏览器,源码基本就重新加载好了。关于 JRebel,使用它的启动按钮,它会监听 target 文件夹,文件发生变化就会自动重载修改的代码,现在除了修改配置文件,基本不需要重启项目
|
12
Kasumi20 2020 年 12 月 24 日
对啊,每次重启好麻烦
https://github.com/develon2015/node-dev-server 这是我基于 webpack 做的 Node 开发工具,依赖文件被修改就会自动重启,很好用,还支持 electron-main |
13
guxingke 2020 年 12 月 24 日
有些框架是可以自动热更(也可能是自动重启)的, 比如 play , helidon
不过你用的是 spring , 那只能推荐 jrebel 了。。。 |
16
AoEiuV020 2020 年 12 月 24 日
|
18
Amayadream 2020 年 12 月 24 日
@AoEiuV020 #16 我也经常这么干,但是确实是适用场景太少了。
|
20
NoUltimate 2020 年 12 月 25 日
可以用 jrebel,github 搜一下有激活服务器,自己本地搭建一个然后点击 work offline 就好了
|
21
tinyuu 2020 年 12 月 25 日
推荐 hotswapagent 开源免费啊。
|