You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Eclipse 2022中调试无JUnit测试用例的Maven应用问题

解决无JUnit测试的Maven应用调试端口监听问题

问题根源

maven-surefire-plugin是专门用于执行JUnit/TestNG测试用例的插件,你的项目没有任何测试用例,运行该插件的debug目标时,插件会直接执行完毕,不会启动调试端口。

正确调试方案

方案一:直接在IDE中调试主类

  • 找到项目中带main方法的主类
  • 右键点击主类 → 选择「Debug '主类名称'」
  • IDE会自动启动调试模式,默认监听5005端口,断点会正常触发

方案二:用maven-exec-plugin配置调试

  1. 在pom.xml中添加exec插件配置:
    <build>
        <plugins>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>exec-maven-plugin</artifactId>
                <version>3.1.0</version>
                <configuration>
                    <mainClass>你的主类全路径(例如:com.example.App)</mainClass>
                </configuration>
            </plugin>
        </plugins>
    </build>
    
  2. 配置IDE的Debug Configuration:
    • 新建「Maven Build」配置,目标填写exec:java
    • 在「VM Options」中添加调试参数:
      -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005
      
  3. 启动调试,程序会在5005端口等待调试器连接,触发断点

方案三:命令行启动调试

执行以下命令(替换主类全路径和程序参数):

mvn exec:java -Dexec.mainClass="你的主类全路径" -Dexec.args="你的程序参数" -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005

之后在IDE中创建「Remote JVM Debug」配置,端口填5005,连接后即可调试。

注意事项

  • 确保断点设置在main方法内部的有效代码行上,不要设置在类定义或空行
  • 使用Remote Debug时,需先启动命令行的程序,再连接IDE调试器

内容的提问来源于stack exchange,提问作者Mohan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 12:15:41