3

我想知道如何远程调试部署在 SAP Cloud Foundry 中的 S4SDK/Spring 2.0.6 Java 应用程序。

我正在使用 Eclipse(Spring Tool Suite)并以调试模式启动应用程序。应用程序将使用以下环境变量重新启动: -Dspring.devtools.remote.secret=secret -Xdebug -Xrunjdwp:server=y,transport=dt_socket,suspend=n,address=47822

控制台输出显示,启动后,SSH 隧道已自动成功创建(作为先决条件,我已使用 cf enable-ssh 启用 SSH)。和“10.0.136.5:34858 成功远程访问”。

几秒钟后,eclipse 显示消息“无法连接到远程 VM”。

如何启用远程调试?

4

1 回答 1

6

这在一定程度上取决于您使用的 buildpack(请参阅此链接)。

对于sap_java_buildpack您需要执行以下操作:

  1. jvmmon在您的 CF 容器中 运行:
    cf ssh <app name> -c "app/META-INF/.sap_java_buildpack/sapjvm/bin/jvmmon"
    
  2. 在打开的 CLI 中输入start debugging.

  3. (可选)输入print debugging information以验证是否启用了调试。

  4. 使用 退出 CLI q

  5. 要打开 ssh 隧道,请输入cf ssh <app name> -N -T -L 8000:127.0.0.1:8000.

  6. localhost:8000有了它,您可以通过IDE 的常用方式连接到您的应用程序。

由于我没有在 Eclipse 中进行远程调试的经验,我无法帮助您完成这部分,在 IDEA 中有一个特殊的“远程”配置,您可以在其中添加远程 URL,所以localhost:8000在这种情况下。

于 2019-01-14T14:38:54.860 回答