Giter Site home page Giter Site logo

dryaohongbin / hotsecondsidea Goto Github PK

View Code? Open in Web Editor NEW

This project forked from liubsyy/hotsecondsidea

0.0 0.0 0.0 36.21 MB

HotSeconds是一款Java远程热部署的插件,可实现秒级一键化热更新。插件分为HotSecondsClient(IDEA热部署插件)和HotSecondsServer(服务端javaagent热更新插件),理论上来说可以热更新任何文件(java/xml/html/css/js等),也支持常用框架(Spring,MyBatis)的热更新,可以节省大量的传统部署java项目的时间。

License: GNU General Public License v3.0

Shell 0.18% Java 99.72% HTML 0.10%

hotsecondsidea's Introduction

中文文档 | English Document

简介

HotSeconds是一款Java远程热部署的插件(当然也支持本地热部署),分为HotSecondsClient(IDEA热部署插件)和HotSecondsServer(服务端agent),理论上来说可以热更新任何文件(java,xml,html,css,js等),也支持常用框架(Spring,MyBatis)的热更新,可以节省大量的打包->部署->启动的时间。
目前支持Java8,Java11和Java17。

插件特性

  • 热更新Java类,包括修改代码块,新增字段,新增方法,新增类,以及动态代理类
  • 支持框架的热更新,比如Spring, SpringMVC,SpringBoot,MyBatis等
  • 支持一些资源文件的上传和热部署
  • 支持热部署jar包中的.class和热部署整个jar包
  • 支持本地热部署和远程热部署,可本地编译也可远程编译
  • 支持获取远程字段值,远程执行方法
  • 支持自定义扩展,比如热更新某个文件的刷新逻辑

最新功能预览

  • HotSecondsClient-1.11.0+HotSecondsServer-future5支持多classloader模式
  • 支持代理服务器连接,如果本地和容器不能直连的话可以试试这种方式
  • HotSecondsClient-1.10.0+HotSecondsServer-future3版本支持 获取远程字段值,远程执行方法2.0
  • HotSecondsClient-1.9.0 支持连接多个不同的服务器(secret+ip+port多远程连接源)

文档链接

下载链接

插件扩展

本插件是可以支持自定义扩展的,比如热更新某个文件之后执行自定义的逻辑

使用演示

按文档安装完之后连接目标端口,右键选择Hot swap this file to remote即可实现热更新,也可以选择批量热更新

下面演示一个SpringMVC新增字段和方法的热部署

下面是一个MyBatis的xml文件的热更新

批量热更新文件,支持热更新修改过的文件和svn/git未提交的差异文件


问题反馈和交流

可以先看常见问题和解决方案,如果还有问题直接建Issues即可,同时也欢迎加QQ群 173093336 交流。

如果本插件对你有帮助,请点击 ⭐Star 支持一下吧,后续为大家带来更多的黑科技

hotsecondsidea's People

Contributors

liubsyy avatar thanple avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.