arthas jvm Error during processing the command: java.lang.NullPointerException, message:null, ple...

使用arthas 查看jvm信息的时候报错
Error during processing the command: java.lang.NullPointerException, message:null, please check $HOME/logs/arthas/arthas.log for more details.
看了下日志:

2021-04-17 22:28:04 [arthas-NettyHttpTelnetBootstrap-3-2] INFO  c.t.a.core.shell.term.impl.Helper -Loaded arthas keymap file from com/taobao/arthas/core/shell/term/readline/inputrc
2021-04-17 22:28:09 [arthas-command-execute] ERROR c.t.a.c.s.system.impl.ProcessImpl -Error during processing the command:
java.lang.NullPointerException: null
    at com.taobao.arthas.core.command.monitor200.JvmCommand.addCompilation(JvmCommand.java:119)
    at com.taobao.arthas.core.command.monitor200.JvmCommand.process(JvmCommand.java:48)
    at com.taobao.arthas.core.shell.command.impl.AnnotatedCommandImpl.process(AnnotatedCommandImpl.java:82)
    at com.taobao.arthas.core.shell.command.impl.AnnotatedCommandImpl.access$100(AnnotatedCommandImpl.java:18)
    at com.taobao.arthas.core.shell.command.impl.AnnotatedCommandImpl$ProcessHandler.handle(AnnotatedCommandImpl.java:111)
    at com.taobao.arthas.core.shell.command.impl.AnnotatedCommandImpl$ProcessHandler.handle(AnnotatedCommandImpl.java:108)
    at com.taobao.arthas.core.shell.system.impl.ProcessImpl$CommandProcessTask.run(ProcessImpl.java:385)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)

网上搜不到相关文章,看了一下源码

在 VMManagementImpl 类 跟踪到如下代码: 

   public String getCompilerName() {
        String var1 = (String)AccessController.doPrivileged(new PrivilegedAction<String>() {
            public String run() {
                return System.getProperty("sun.management.compiler");
            }
        });
        return var1;
    }

猜测arthas没有读到compiler info
手动获取到java 的compile info 并在arthas设置属性,问题解决:

[arthas@2650]$ sysprop sun.management.compiler
There is no property with the key sun.management.compiler
[arthas@2650]$ sysprop sun.management.compiler HotSpot\ 64-Bit\ Tiered\ Compilers
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 今天感恩节哎,感谢一直在我身边的亲朋好友。感恩相遇!感恩不离不弃。 中午开了第一次的党会,身份的转变要...
    迷月闪星情阅读 10,618评论 0 11
  • 彩排完,天已黑
    刘凯书法阅读 4,317评论 1 3
  • 表情是什么,我认为表情就是表现出来的情绪。表情可以传达很多信息。高兴了当然就笑了,难过就哭了。两者是相互影响密不可...
    Persistenc_6aea阅读 126,160评论 2 7