调用带Long参数方法的Byteman规则触发NullPointerException问题
Byteman规则触发NullPointerException问题分析
问题概况
- 使用Byteman版本:
/projects/byteman-download-4.0.23 - 触发场景:调用传入null的Long类型参数的
m2方法时,触发NullPointerException(NPE) - 已编写测试Java代码复现该问题
相关文件信息
测试Java代码
// 此处为复现问题的Java测试代码
Byteman脚本
// 此处为对应的Byteman规则脚本
程序执行报错日志
// 此处为触发NPE时的报错日志内容
反编译生成的类文件内容
// 此处为反编译后的类文件代码
疑问与推测
- 疑问:为何会触发该NPE?
- 推测:Byteman规则调用过程中,将传入的null类型的Long参数强制转换为原生
long类型,触发自动拆箱操作,从而导致NullPointerException。
内容的提问来源于stack exchange,提问作者Asif Ansari
相关产品推荐
相关产品推荐

