https://github.com/clouderhem/jvm-tools
使用javaagent实现小工具
https://github.com/clouderhem/jvm-tools
Last synced: about 1 year ago
JSON representation
使用javaagent实现小工具
- Host: GitHub
- URL: https://github.com/clouderhem/jvm-tools
- Owner: CLOUDERHEM
- Created: 2023-08-17T12:41:27.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2023-10-18T11:50:19.000Z (over 2 years ago)
- Last Synced: 2023-10-18T12:44:10.211Z (over 2 years ago)
- Language: Java
- Homepage:
- Size: 4.99 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# jvm-tools
## 说明
`jvm-tools`是使用`javaagent`和`javaasist`实现的一些小功能
## 使用
1. 找到java程序的pid
2. 使用命令`java -jar jvm-tools.jar ` attach到目标java进程
3. 在终端中输入支持的指令
## 支持指令
### 方法参数打印
* 输入打印方法的参数
* 指令: `methodlog `
### 还原类
* 能够将修改的类还原
* 指令: `restoreclass `
### 退出
* 关闭attach时候启动的`netty`服务端, 客户端也同时关闭
* 指令: `shutdown`
### 类热替换
* 通过新的字节码url地址, 热替换类文件
* 指令`hotswapclass `
## 说明
**on jdk1.8**
* `retransformClasses`
1. 可以更改方法体、常量池和属性
2. 不得添加、删除、重命名字段或方法
3. 不得更改方法签名或更改类继承