SAP Cloud Foundry 中的远程调试

O. *_*erk 3 java eclipse cloud-foundry s4sdk sap-cloud-platform

我想知道如何远程调试部署在 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”。

如何启用远程调试?

Chr*_*ert 6

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

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

  1. jvmmon在您的 CF 容器中运行:
    cf ssh <app name> -c "app/META-INF/.sap_java_buildpack/sapjvm/bin/jvmmon"
    
    Run Code Online (Sandbox Code Playgroud)
  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:8000IDE 的常用方式连接到您的应用程序。

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