HotswapAgent 项目使用教程

HotswapAgent 项目使用教程

HotswapAgent Java unlimited redefinition of classes at runtime. 项目地址: https://gitcode.com/gh_mirrors/ho/HotswapAgent

1. 项目的目录结构及介绍

HotswapAgent 项目的目录结构如下:

HotswapAgent/
├── hotswap-agent-core/
├── hotswap-agent-parent/
├── hotswap-agent/
├── plugin/
├── .gitignore
├── LICENSE
├── README.md
├── pom.xml
└── run-tests.sh

目录结构介绍

  • hotswap-agent-core/: 核心模块,包含 HotswapAgent 的核心功能代码。
  • hotswap-agent-parent/: 父模块,用于管理项目的依赖和插件。
  • hotswap-agent/: 主模块,包含 HotswapAgent 的主要代码和配置。
  • plugin/: 插件模块,包含各种框架的插件代码。
  • .gitignore: Git 忽略文件,指定哪些文件或目录不需要被 Git 管理。
  • LICENSE: 项目许可证文件,采用 GPL-2.0 许可证。
  • README.md: 项目介绍文件,包含项目的概述、安装和使用说明。
  • pom.xml: Maven 项目配置文件,定义项目的依赖和构建配置。
  • run-tests.sh: 测试脚本,用于运行项目的集成测试。

2. 项目的启动文件介绍

HotswapAgent 项目的启动文件主要是通过 JVM 参数来配置和启动的。以下是不同 Java 版本的启动配置示例:

Java 17/21

java -XX:+AllowEnhancedClassRedefinition -XX:HotswapAgent=fatjar -jar your-application.jar

Java 11

java -XX:HotswapAgent=fatjar -jar your-application.jar

Java 8

java -XXaltjvm=dcevm -javaagent:hotswap-agent.jar -jar your-application.jar

启动文件介绍

  • -XX:+AllowEnhancedClassRedefinition: 启用增强的类重定义功能(仅适用于 Java 17/21)。
  • -XX:HotswapAgent=fatjar: 启用 HotswapAgent 的 fatjar 模式,包含所有插件。
  • -XXaltjvm=dcevm: 使用 DCEVM 作为替代 JVM(仅适用于 Java 8)。
  • -javaagent:hotswap-agent.jar: 指定 HotswapAgent 的 jar 文件路径。

3. 项目的配置文件介绍

HotswapAgent 的配置文件主要是通过 hotswap-agent.properties 文件来进行的。以下是一些常见的配置项:

hotswap-agent.properties

# 启用自动 Hotswap
autoHotswap=true

# 添加额外的类路径
extraClasspath=/path/to/additional/classes

# 监控资源文件夹
watchResources=/path/to/resources

# 指定自定义配置文件路径
propertiesFilePath=/data/hotswap-agent.properties

配置文件介绍

  • autoHotswap: 启用自动 Hotswap 功能,当类文件发生变化时自动重新加载。
  • extraClasspath: 添加额外的类路径,用于监控外部依赖的类文件变化。
  • watchResources: 监控指定的资源文件夹,当资源文件发生变化时自动重新加载。
  • propertiesFilePath: 指定自定义配置文件的路径,用于覆盖默认配置。

通过以上配置,可以灵活地调整 HotswapAgent 的行为,以适应不同的开发和生产环境。

HotswapAgent Java unlimited redefinition of classes at runtime. 项目地址: https://gitcode.com/gh_mirrors/ho/HotswapAgent

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

倪澄莹George

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值