IntelliJ IDEA 13 调试器不会在 java 中为 maven 项目停止断点马文IntelliJ IDEA
我在命令所在的行上有一个断点。我相信该命令是通过执行到达的,因为我看到打印的字符串“test”。但断点将被忽略。System.out.println("test")
断点始终是一个红色圆圈,没有刻度或叉号。当IDEA认为类未加载时,我认为这是一个问题,因为它是,因为命令被执行了。
我可以在各种情况下重现它:
当我按调试时(使用 maven 配置)
install exec:exec -DforkMode=never
)-
远程调试 - 我在控制台的调试模式下运行 maven 目标:
mvnDebug install exec:exec -DforkMode=never
或
mvnDebug install exec:exec
IDEA 中的远程调试配置:
- 运行远程 JVM 的参数:
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8000
- 对于 JDK 1.4.X:
-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000
- 运输:插座
- 调试器模式:附加
- 主机:本地主机
- 端口:8000
- 运行远程 JVM 的参数:
在这两种情况下,调试器仅打印“已连接到目标 VM,地址:'localhost:8000',传输:'套接字'”
我也尝试过清理构建,但断点仍然被忽略。File > Invalidate Caches / Restart
配置:
Ubuntu 13.10
IntelliJ IDEA Ultimate build 133.944
Apache Maven 3.0.4
Java 版本: 1.7.0_51, 供应商: Oracle Corporation
OS name: “linux”, version: “3.11.0-17-generic”, arch: “amd64”, family: “unix”
编辑:pom.xml的相关部分:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2.1</version>
<configuration>
<executable>java</executable>
<arguments>
<argument>-D--secret--.server.configuration=/usr/local/etc</argument>
<argument>-classpath</argument><classpath/>
<argument>com.--secret--.Server</argument>
</arguments>
</configuration>
</plugin>