【问题标题】:Problems with heroku remote debugging in IntelliJIntelliJ 中 Heroku 远程调试的问题
【发布时间】:2018-11-13 20:20:10
【问题描述】:

我启动了命令“heroku ps:forward 9090 --app [app-name]”。我在 IntelliJ 中添加了“远程”调试配置,并将主机设置为“本地主机”,端口设置为“9090”。我启动调试器,过了一会儿我收到了这条消息:

“运行“[配置名称]”时出错:无法打开调试器端口(localhost:9090):java.io.IOException“握手失败 - 连接过早关闭”。

我用 netstat 检查了端口 9090 实际上正在侦听连接。

【问题讨论】:

  • 你能telnet到这个端口吗?
  • 我可以远程登录到端口。
  • 这个端口到底有什么可用的? Java Debugger 接口还是别的什么?
  • 它应该是使用ssh隧道的java调试器接口。当我远程登录时,我得到了连接,但没有响应。如果我随机输入一些东西,我什么也得不到(我想如果我给出一个有效的命令,它只会给出输出)
  • 在远程使用什么命令在此端口上启动 Java 调试器?

标签: java debugging heroku intellij-idea heroku-cli


【解决方案1】:

事实证明,为了启用 heroku 调试,您需要一个“Procfile”。可以在没有此文件的情况下运行实例,但随后会使用默认参数(这显然是我们所做的)。

添加这个“Procfile”后,调试终于成功了:

   web: java -Dserver.port=$PORT $JAVA_OPTS -agentlib:jdwp=transport=dt_socket,server=y,address=9090,suspend=n -jar target/<.jar file>

【讨论】:

    猜你喜欢
    • 2017-12-11
    • 2011-10-07
    • 2014-02-06
    • 2014-02-24
    • 1970-01-01
    • 2012-09-12
    • 2012-12-25
    • 2012-05-05
    • 2018-02-21
    相关资源
    最近更新 更多