java - Intellij IDEA 无法打开调试器端口(localhost :8787): java. io.IOException "handshake failed - connection prematurally closed"

标签 java intellij-idea remote-debugging

我正在尝试在 intelli J IDEA 中远程调试 java 测试文件。但是我收到以下错误。

Error running 'test': Unable to open debugger port (localhost:8787): java.io.IOException "handshake failed - connection prematurally closed"

我见过编辑命令行参数的解决方案,但在2019.2(终极版)中不允许。

下面是我的配置。

Blockquote

请帮忙。

最佳答案

在容器中运行的 java 命令需要具有以下参数以及已有的任何其他参数。

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

创建容器镜像后,需要通过在 Dockerfile 中添加以下行来公开端口 8787:

EXPOSE 8787

创建容器时,您需要指定端口 8787 应通过隧道连接到您的 docker 主机。如果您使用 docker-compose,请在特定容器部分添加以下内容:

ports:
  - '8787:8787'

如果您使用docker create,则参数为--publish=8787:8787

如果所有这些都已正确设置,那么调试器现在应该可以连接到 localhost:8787。

关于java - Intellij IDEA 无法打开调试器端口(localhost :8787): java. io.IOException "handshake failed - connection prematurally closed",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58725488/

相关文章:

visual-studio - 如何从 Visual Studio 调试在 Linux Docker 容器中运行的 .NET Core 应用程序

pycharm - .pycharm_helpers/packaging_tool.py : Permission denied

java - 使用 IntelliJ 远程调试 Tomcat 7

java - 如何将动态 Web 应用程序转换为 war

java - Glassfish - java.lang.NoClassDefFoundError : org/primefaces/model/UploadedFile

java - 如何在我的 Gradle JAR 类路径构建脚本中包含 com.sun.tools JAR 并与我的 IDE 同步?

android - 如何在 Intellij IDEA 中获取实时模板中的方法参数类型?

java - 如何将 Quartz 调度程序连接到我的 Spring 上下文中?

java - itext, Flying Saucer : xhtml to pdf ClassCastException

intellij-idea - 在intellij dart中使用Sass变压器