• 在mac上使用jmap -heap命令报错:Attaching to process ID 96530, please wait...


    在mac上执行命令jmap -heap 96530
    报错:

    Attaching to process ID 96530, please wait...
    ERROR: attach: task_for_pid(96530) failed: '(os/kern) failure' (5)
    Error attaching to process: sun.jvm.hotspot.debugger.DebuggerException: Can't attach to the process. Could be caused by an incorrect pid or lack of privileges.
    sun.jvm.hotspot.debugger.DebuggerException: sun.jvm.hotspot.debugger.DebuggerException: Can't attach to the process. Could be caused by an incorrect pid or lack of privileges.
    	at sun.jvm.hotspot.debugger.bsd.BsdDebuggerLocal$BsdDebuggerLocalWorkerThread.execute(BsdDebuggerLocal.java:169)
    	at sun.jvm.hotspot.debugger.bsd.BsdDebuggerLocal.attach(BsdDebuggerLocal.java:287)
    	at sun.jvm.hotspot.HotSpotAgent.attachDebugger(HotSpotAgent.java:671)
    	at sun.jvm.hotspot.HotSpotAgent.setupDebuggerDarwin(HotSpotAgent.java:659)
    	at sun.jvm.hotspot.HotSpotAgent.setupDebugger(HotSpotAgent.java:341)
    	at sun.jvm.hotspot.HotSpotAgent.go(HotSpotAgent.java:304)
    	at sun.jvm.hotspot.HotSpotAgent.attach(HotSpotAgent.java:140)
    	at sun.jvm.hotspot.tools.Tool.start(Tool.java:185)
    	at sun.jvm.hotspot.tools.Tool.execute(Tool.java:118)
    	at sun.jvm.hotspot.tools.HeapSummary.main(HeapSummary.java:49)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.lang.reflect.Method.invoke(Method.java:498)
    	at sun.tools.jmap.JMap.runTool(JMap.java:201)
    	at sun.tools.jmap.JMap.main(JMap.java:130)
    Caused by: sun.jvm.hotspot.debugger.DebuggerException: Can't attach to the process. Could be caused by an incorrect pid or lack of privileges.
    	at sun.jvm.hotspot.debugger.bsd.BsdDebuggerLocal.attach0(Native Method)
    	at sun.jvm.hotspot.debugger.bsd.BsdDebuggerLocal.access$100(BsdDebuggerLocal.java:65)
    	at sun.jvm.hotspot.debugger.bsd.BsdDebuggerLocal$1AttachTask.doit(BsdDebuggerLocal.java:278)
    	at sun.jvm.hotspot.debugger.bsd.BsdDebuggerLocal$BsdDebuggerLocalWorkerThread.run(BsdDebuggerLocal.java:144)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25

    在这里插入图片描述
    原来是jdk(mac版)的bug:
    https://bugs.java.com/bugdatabase/view_bug.do?bug_id=8160376

    升级成最新版jdk试试:
    在这里插入图片描述
    依然不管用。

    还一不小心把~/.zshrc文件给改坏了,iterm2无法启动。在访达界面,按住“Command + Shift + . ”,显示隐藏文件。
    在这里插入图片描述
    看到隐藏文件,用文本编辑app打开.zshrc,即可编辑。

    言归正传,jmap -heap pid,这bug就一直存在?在mac上这命令算不算是弃用了呀?

  • 相关阅读:
    GB28181学习(十二)——报警事件通知和分发
    Tomcat+Maven+Servlet安装与部署
    用友U8与MES系统API接口对接案例分析
    PG守护进程(Postmaster)——辅助进程PgStat统计消息
    【预测模型-SVM预测】基于粒子群算法结合支持向量机SVM实现Covid-19风险预测附matlab代码
    Python操作Mysql
    基于STC系列单片机实现定时器扫描数码管显示定时器/计数器产生频率的功能
    如何看待猎聘发布:2023 年应届生平均招聘月薪10342元
    GNSS+IMU学习
    Centos7安装mysql(只需六步)
  • 原文地址:https://blog.csdn.net/lilyssh/article/details/134319415