javamacosdebuggingjvm-hotspotjdb

Mac OS HSDB HotSpot Debugger can not attach to the process


I want to use HSDB to debug my java code. I follow the steps blow:

  1. Debug my code in IntelliJ and stop at a breakpoint
  2. Start HSDB:

    java -cp ,:/Library/Java/JavaVirtualMachines/jdk1.8.0_161.jdk/Contents/Home/lib/sa-jdi.jar sun.jvm.hotspot.HSDB

  3. use jps to get the pid enter image description here
  4. attach to the pid, but error occurs. enter image description here enter image description here

My java version:

java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)

My os version:

  System Version: macOS 10.13.3 (17D102)
  Kernel Version: Darwin 17.4.0
  Boot Volume: 未命名
  Boot Mode: Normal
  Secure Virtual Memory: Enabled
  System Integrity Protection: Enabled
  Time since boot: 6 days 1:08

Can someone gives me some advices? Thanks in advance.


Solution

  • I found that I need to use sudo

    sudo java -cp ,:/Library/Java/JavaVirtualMachines/jdk1.8.0_161.jdk/Contents/Home/lib/sa-jdi.jar sun.jvm.hotspot.HSDB