Jrebel激活服务搭建
前言
因为平时的开发工具是使用IntelliJ IDEA,所以热部署项目代码的时候,使用的Jrebel。因为Jrebel是收费的,所以以前用的时候都是在网上找破解方法(国人通用做法),在网上找到的办法是输入一个在线激活服务,来进行激活。由于简单方便就一直这样用的,今天早上打开IDEA后发现,Jrebel激活失效了。后来才发现原来之前的在网上找的在线激活服务挂了,ping都ping不通。后来就又在网上各种找办法,虽然说又找到了一个可用的在线激活服务。但是通过这次出现的这个问题。自己也觉得总是依赖别人的服务,毕竟不是办法,所以就想着自己的研究一下,然后做个自己的激活服务。
Jrebel很好用,也是离不开大家的支持,所以如果条件允许的话,还是建议大家购买正版的lisence。
服务地址
http://140.143.12.222:8081/
在此地址的后面拼接上一个GUID即可。GUID在线生成网址:Create GUIDS online。
例如:http://140.143.12.222:8081/c2f11295-52bf-4c7d-b24d-7fcf3fe88a12
(如果激活失败了,可以换一个GUID进行重试)
使用方式
首先需要在IDEA中安装Jrebel中,安装步骤(Windows):File->Settings->Plugins,然后在线安装插件处搜索Jrebel,然后进行安装,重启IDEA后生效。在安装完Jrebel后,进行激活,Help->Jrebel->Activation。
激活步骤
然后选择第一个选项,Connect to online licensing service,在第一个输入框中输入拼接好的在线激活服务,
例如:http://140.143.12.222:8081/ea1d67dc-bb7a-4db0-9ed4-1b6742b0f38b
然后在第二个输入框中随便输入一个邮箱地址(符合格式的邮箱都可以)。
然后点击Change license按钮即可激活。
如果激活不成功,可以用上面说的那个在线生成GUID的网站再生成一个新的GUID再试一次。
授人以鱼不如授人以渔
搭建激活服务,前提是要有一个联网的服务器。然后去码云上下载这个开源的程序代码:https://gitee.com/gsls200808/JrebelLicenseServerforJava
下载到代码后,可以在本地运行一下。
运行MainServer这个类中的main方法。会看到如下日志后,就说明启动成功了。这样可以直接使用本地的这个服务激活Jrebel了。
License Server started at http://localhost:8081
JetBrains Activation address was: http://localhost:8081/
JRebel 7.1 and earlier version Activation address was: http://localhost:8081/{tokenname}, with any email.
JRebel 2018.1 and later version Activation address was: http://localhost:8081/{guid}(eg:http://localhost:8081/779a56c2-4163-430e-9492-087bbb568a30), with any email.
我们要做的目的是要部署到Linux服务器上,成为一个长期有效的服务,而不是一个本地服务。
用maven对项目进行打包,命令:
mvn clean
mvn clean package
然后在target目录下找到打好的jar包,上传到服务器。
在上传目录下执行如下命令,运行jar包。前提是当前服务器已经安装了JDK(版本大于1.6)。
nohup java -jar JrebelBrainsLicenseServerforJava-1.0-SNAPSHOT-jar-with-dependencies.jar >/dev/null 2>&1
通过命令查看服务是否运行成功:ps -ef | grep java
这样我们的Jrebel激活服务就搭建成功了。
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Android NavigationBar问题处理的方法
- mac系统下载、安装、使用Java8教程
- React Native学习之Android的返回键BackAndroid详解
- Android动态添加view的方法示例
- Android开发之瀑布流控件的实现与使用方法示例
- Android自定义View绘制四位数随机码
- Anroid四大组件service之本地服务的示例代码
- Android使用Activity实现简单的可输入对话框
- ANDROID BottomNavigationBar底部导航栏的实现示例
- Android实现时间倒计时功能
- Android开发基于Drawable实现圆角矩形的方法
- Android开发中滑动分页功能实例详解
- Android登录注册功能 数据库SQLite验证
- CMQ消费者报错,无法获取本机ip地址问题排查
- 腾讯云TKE-Metrics-Server案例: TKE中自建Metrics-Server问题