天天看点

Maven项目下用Eclipse做单步调试

从网上整理来的知识点,留着备用:

Maven项目下用Eclipse做单步调试:

用Maven来管理开发项目。如何在Maven项目下用Eclipse做单步调试呢。这时就需要使用JDK提供的JDWP远程调试协议进行代码调试。使用Eclipse可以结合JDWP进行项目调试。

假设我们想要调试Maven,由于Maven是非常大的一个项目,我们会需要先将它执行起来,然后把调试器连接至程序的执行虚拟机中,在调试器中导入相关程序,并加入断点。而JDWP使这一工作成为可能。JDWP的全称是Java Debug Wire Protocol,它定义了调试器(debugger)和被调试的 Java 虚拟机(target vm)之间的通信协议。

在Maven命令执行前加入一行参数:

1     export MAVEN_OPTS=-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=y

如果是在Windows环境下,则是:

      set MAVEN_OPTS=-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=y

此时在某个由Maven管理的工程下执行mvn指令,将会使mvn进入远程调试状态,开通我们配置的侦听端口号8787:

      mvn install

      listening for transport dt_socket at address: 8787

此时,mvn程序便进入了等待调试的状态。

与常规的调试不同,我们选择Debug Configuration,进入配置页面。选择Remote Java Application,配置好要调试的项目,端口号写为8787,点选Debug按钮,然后将Eclipse选择为Debug模式。

继续阅读