Java 通过Maven运行的JUnit/Cucumber测试未在VS代码中调试

Java 通过Maven运行的JUnit/Cucumber测试未在VS代码中调试,java,maven,junit,visual-studio-code,cucumber,Java,Maven,Junit,Visual Studio Code,Cucumber,我有一个用Java编写的测试套件,使用Cucumber和JUnit。这个套件通常是通过Maven运行的,但我遇到了一些问题。我想在VisualStudio代码中调试这些测试。我已经获得了Java扩展包,并在我的launch.json中设置了以下内容: { "type": "java", "name": "Debug (Attach)", "request": "attach", "hostName": "localhost", "port": 8000 }

我有一个用Java编写的测试套件,使用Cucumber和JUnit。这个套件通常是通过Maven运行的,但我遇到了一些问题。我想在VisualStudio代码中调试这些测试。我已经获得了Java扩展包,并在我的launch.json中设置了以下内容:

{
    "type": "java",
    "name": "Debug (Attach)",
    "request": "attach",
    "hostName": "localhost",
    "port": 8000
}

然后,我运行mvnDebug-DforkCount=0测试,让Maven监听端口8000并在VS代码中开始调试。我的所有断点都未命中,但一旦调试开始,Maven作业就会继续进行。我希望能够在Maven运行套件时逐步完成代码。建议?

我放弃了VS代码,决定安装Eclipse。在这方面的文档中,有一个注释,用于向Maven调试配置添加参数。我决定尝试将它与VS代码一起使用,它成功了!我运行了mvnDebug test-DforkMode=never,而不是前面提到的命令,使用上面列出的相同的launch.json配置在VSCode中开始调试,我的断点成功命中


希望这对其他在Java堆栈上使用VS代码的人有用。

我已经放弃了VS代码,决定安装Eclipse。在这方面的文档中,有一个注释,用于向Maven调试配置添加参数。我决定尝试将它与VS代码一起使用,它成功了!我运行了mvnDebug test-DforkMode=never,而不是前面提到的命令,使用上面列出的相同的launch.json配置在VSCode中开始调试,我的断点成功命中

希望这对在Java堆栈上使用VS代码的其他人有用。

注意:自2.14版以来,forkMode=从未被弃用过。新的等价物是:forkCount=0。注意:自版本2.14以来,forkMode=从未被弃用。新的等价物是:forkCount=0。