Remote debugging a Java application

前端 未结 6 1821
我在风中等你
我在风中等你 2020-11-22 07:24

I have a java application running on linux machine. I run the java application using the following:

java myapp -Xdebug -Xrunjdwp:server=y,transport=dt_socke         


        
6条回答
  •  既然无缘
    2020-11-22 07:50

    For JDK 1.3 or earlier :

    -Xnoagent -Djava.compiler=NONE -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=6006
    

    For JDK 1.4

    -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=6006
    

    For newer JDK :

    -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=6006
    

    Please change the port number based on your needs.

    From java technotes

    From 5.0 onwards the -agentlib:jdwp option is used to load and specify options to the JDWP agent. For releases prior to 5.0, the -Xdebug and -Xrunjdwp options are used (the 5.0 implementation also supports the -Xdebug and -Xrunjdwp options but the newer -agentlib:jdwp option is preferable as the JDWP agent in 5.0 uses the JVM TI interface to the VM rather than the older JVMDI interface)

    One more thing to note, from JVM Tool interface documentation:

    JVM TI was introduced at JDK 5.0. JVM TI replaces the Java Virtual Machine Profiler Interface (JVMPI) and the Java Virtual Machine Debug Interface (JVMDI) which, as of JDK 6, are no longer provided.

提交回复
热议问题