内容介绍
JRebel有两个非常酷的特性,一是支持热部署,二是支持远程热部署。具体见JRebel特性。
本篇文章的内容是记录一次我的远程热部署的搭建过程。
环境说明
- 服务器是centos 7 64位。
- 本地电脑是win10,安装了IntelliJ IDEA,JRebel并已激活。
- 有一个springboot项目。
步骤
要实现远程热部署,我们需要做的简单分为几步:
1. 在服务器安装一个JRebel
2. 配置本地的JRebel
3. 在服务器用JRebel启动项目
4. 本地添加远程服务器
在服务器安装一个JRebel
官网下载最新的JRebel,点击官网链接
当前最新版本是2018.1.0
,点击上图中的File列的文件名即可下载。这里的版本是standalone的,也就是独立的,JRebel目前有两种版本,一种是依赖IDE的,一种是独立的,我们的服务器上需要安装独立版。解压下载好的Zip
unzip jrebel-2018.1.0-nosetup.zip
如果提示command not found,安装unzip
yum install unzip
如图:
激活JRebel
我这里是使用 activation code 进行激活,调用bin目录下的 activate.sh 跟上 activation code 即可。
其他激活方式请查看官网,点击进入,如图:
设置服务器密码
java -jar jrebel.jar -set-remote-password
配置本地的JRebel
设置JRebel的Startup为 Run on a remote server or VM,如图:
View -> Tool Windows -> JRebel 进入 JRebel Panel窗口,打勾后会生成
rebel.xml
和rebel-remote.xml
,如图:
使用maven的package命令打包,生成
baba-0.0.1-SNAPSHOT.jar
,如图:
打开jar可以看到JRebel生成的rebel.xml
和rebel-remote.xml
将jar上传至服务器
在服务器用JRebel启动项目
进入jar所在目录,运行命令启动项目
nohup java "-agentpath:/usr/common/jrebel/lib/libjrebel64.so" -Drebel.remoting_plugin=true -jar baba-0.0.1-SNAPSHOT.jar &
-agentpath:/usr/common/jrebel/lib/libjrebel64.so
片段中的/usr/common/jrebel
为你安装的jrebel的路径
PS:详细配置内容,点击可见
查看日志文件,如图说明运行成功
本地添加远程服务器
Server URL的端口是web端口,点击Test Connection
会如图显示 Connection successful。
接下来全部配置完成,试试
参考:http://manuals.zeroturnaround.com/jrebel/remoteserver/index.html
以上。