布景
在java开发中咱们经常会遇到这样的场景,代码需求在服务器上(测试或许沙箱)运行,可是每次修正代码咱们都需求经历打包->布置->发动等一些列的流程,这一套流程下来短则几分钟,长则几十分钟都有或许,绵长的打包流程浪费了咱们大量的芳华,市道上有很多java热布置的插件,要么是只能修正办法体而不能新增字段和办法,要么就是只能在本地热布置,自己也是在工作中布置浪费了很多的芳华,于是我痛定思痛,决定写一款长途热布置插件来节省时间,现将该插件HotSeconds分享给咱们,希望能给咱们带来帮助。
运用场景
- IDEA本地修正代码直接一键化热布置到长途服务器,只需求几秒钟。
- 支撑修正代码块,新增字段,新增办法,新增类。
- 支撑一些开源框架比方Spring, SpringMVC和MyBatis。 比方新增一个@Autorwired字段或许新增MyBatis的接口或许修正.xml也是能够支撑热布置的。
- 最重要的一点,能支撑扩展,比方公司内部的框架,或许一些新出的第三方框架,我需求在热布置文件后履行一些改写缓存或许上下文的操作,也能自定义。
有了上述特色,开发功率至少能够提升100倍,不过光是热布置改bug还远远不是本插件的方针,那只是牛刀小试,我的方针是在线开发,长途服务器就是你的履行端,而本地,仅仅是一个写代码端。
运用演示
安装完插件后,Debug旁边有一个按钮,翻开或许封闭衔接长途
高版别的IDEA能够点Run->HotSeconds Start/Stop翻开和封闭。
初次翻开会弹出装备选项,能够装备本地哪些目录下的文件上传到长途。
咱们来演示一个SpringMVC的代码热布置
原来代码长这样
@Controller
@RequestMapping("/view")
public class HelloViewController {
@RequestMapping("/test")
@ResponseBody
public String test() {
return "hello,test";
}
}
咱们修正代码为
@Controller
@RequestMapping("/view")
public class HelloViewController {
@RequestMapping("/test")
@ResponseBody
public String test() {
return "hello,"+name();
}
private String name(){
return "Tom";
}
}
右键,选中Hot swap this file to remote
然后就能把代码热布置到长途,改写浏览器页面,代码就生效了。
咱们接着新增一个注入的字段和controller
右键热布置一下,改写网页能够看到成果
咱们对UserMapperXml.xml修正一下Mybatis代码
履行右键热布置改写网页就能看到成果
长途编译并热布置
右键菜单下有长途编译并热布置的功用,主要是处理本地和长途jdk版别不一致的问题,请保证长途服务器运行用的是jdk而不是jre,如果是jre则不能编译。
热布置jar包和jar包内的.class
翻开一个jar包的.class,右键,能够看到两个选项,能够将当时的.class热布置到长途,也能够将整个jar包热布置到长途。
主动热布置
在Run->HotSeconds Settings->Settings中能够设置主动热布置,只需本地文件修正了就会主动热布置到长途。
长途履行办法
附带了一个十分强大的功用,长途履行静态无参办法
这样能够不用写接口就能够直接履行长途的函数,能够在这个函数里面调用一些有参数或许非静态的办法,中间需求比方Spring容器上下文自己去维护即可,十分便利。
安装文档
本插件分为HotSecondsClient和HotSecondsServer,请点击下面文档检查具体的安装教程。
安装文档入口