【修BUG】WARNING:Illegal reflective access by com.baomidou.mybatisplus.core.toolkit.setAccessibleAction

问题

WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by com.baomidou.mybatisplus.core.toolkit.setAccessibleAction

分析

这是一个 Java 运行时环境的警告信息,通常会在使用某些开源框架或者库时出现。这个警告信息表示在运行时发生了非法反射操作,可能会影响应用程序的稳定性和可靠性。

反射是一种 Java 语言的特性,可以在运行时获取类、方法、字段等信息,并且可以动态地调用方法或者访问字段。然而,使用反射操作可能会破坏封装性和安全性,因此在 Java 9 之后,Java 引入了模块化系统,限制了反射操作的范围,以提高应用程序的安全性和稳定性。

解决方案

当出现上述警告信息时,可能是因为使用的框架或者库使用了一些不受支持的反射操作,例如使用 setAccessible 方法来访问私有的方法或者字段。为了避免这个问题,可以采取以下措施:

  1. 升级使用的框架或者库到最新版本,以获得最新的修复和优化。

  2. 如果使用的是 Java 9 及以上版本,可以在启动应用程序时加上 --illegal-access=deny 或者 --illegal-access=warn 参数来禁用或者警告非法反射操作。

  3. 如果使用的是 Java 8 或者更早的版本,可以在启动应用程序时加上 -Djdk.reflect.allowGetDeclaredConstructors=true 或者 -Djdk.reflect.allowGetDeclaredMethods=true 参数来允许某些非法反射操作。不过,这并不是一种推荐的做法,可能会影响应用程序的稳定性和可靠性。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值