美文网首页Java
记一次aviator ibm jdk 不兼容问题排查

记一次aviator ibm jdk 不兼容问题排查

作者: Aiibai | 来源:发表于2019-08-16 17:18 被阅读0次
    问题背景

    在was8.5平台,调用AviatorEvaluator.compile 方法时,整个进程都挂掉了,但是同样的代码在本地运行是没有问题的。

    解决过程
    1. 在项目的根目录下找到了当进程挂掉时生成的三个文件,分别是:
      core.20190816.115359.86949.0001.dmp
      javacore.20190816.115359.86949.0002.txt
      Snap.20190816.115359.86949.0003.trc
      那就先从txt文件下手了,找到了下面的提示


      image.png

    从上面的日志中看到问题很可能出在了虚拟机厂商不同,导致本地现象和was平台不一致

    • was8.5jdk版本


      image.png
    • 本地版本


      image.png
    1. 定位到错误中的代码行


      image.png

    错误是出现在标红的地方
    这段代码也给出的暗示,如果错误次数达到10000次,就将preferClassLoader设置为 true,但是我们碰到的情况是只要执行标红的代码整个进程就会挂掉,根本等不到10000次。所以我们的解决方案是:在启动参数中,将配置aviator.preferClassloaderDefiner设置为 true

    相关文章

      网友评论

        本文标题:记一次aviator ibm jdk 不兼容问题排查

        本文链接:https://www.haomeiwen.com/subject/nzeqsctx.html