Run in JDK17 fail: Unsupported class file major version 61 in 3.7.2
- Dominant language
- Java
- Stars
- 37.5k
- Forks
- 7.6k
- Avg merge
- 1d 22h
- Merged PRs (30d)
- 4
Description
- [ ] 我已经在 [issues](https://github.com/alibaba/arthas/issues) 里搜索,没有重复的issue。
### 环境信息
https://github.com/alibaba/arthas/releases/download/arthas-all-3.7.2/arthas-bin.zip
* `arthas-boot.jar` 或者 `as.sh` 的版本: 3.7.2
* Arthas 版本: 3.7.2
* 操作系统版本: linux
* 目标进程的JVM版本: jdk 17
* 执行`arthas-boot`的版本: 3.7.2
### 重现问题的步骤
使用watch
watch com.facebook.presto.orc.AbstractOrcRecordReader prepareNextBatch 'target.stripes' 'target.stripes.size()>0' -n 2 -s -x 1
### 期望的结果
正常watch
What do you expected from the above steps?
### 实际运行的结果
```
2024-05-26 17:47:48 [arthas-command-execute] WARN c.t.arthas.core.advisor.Enhancer -transform loader[com.facebook.presto.server.PluginClassLoader@63513c1c]:class[com/facebook/presto/orc/OrcBatchRecordReader] failed.
java.lang.IllegalArgumentException: Unsupported class file major version 61
at com.alibaba.deps.org.objectweb.asm.ClassReader.(ClassReader.java:189)
at com.alibaba.deps.org.objectweb.asm.ClassReader.(ClassReader.java:170)
at com.alibaba.deps.org.objectweb.asm.ClassReader.(ClassReader.java:156)
at com.alibaba.bytekit.utils.AsmUtils.toClassNode(AsmUtils.java:59)
at com.taobao.arthas.core.advisor.Enhancer.transform(Enhancer.java:132)
at com.taobao.arthas.core.advisor.TransformerManager$1.transform(TransformerManager.java:51)
```
Contributor guide
Research direction
Reproduce the watch command from the issue on JDK 17 using Arthas 3.7.2, then start with the reported stack trace in com.taobao.arthas.core.advisor.Enhancer and follow AsmUtils.toClassNode into the bundled ASM ClassReader. Done means the target class transforms successfully and watch runs without the Unsupported class file major version 61 error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- devtools
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100