搜索

第 4 章 调试基于 Eclipse Vert.x 的应用

download PDF

这部分包含有关在本地和远程部署中调试基于 Eclipse Vert.x 的应用的信息。

4.1. 远程调试

要远程调试应用,您必须首先将其配置为在调试模式中启动,然后为它附加一个调试器。

4.1.1. 以调试模式在本地启动应用程序

调试基于 Maven 的项目的方法之一是在指定调试端口的同时手动启动应用,然后将远程调试器连接到该端口。此方法至少适用于以下应用程序部署:

  • 使用 mvn vertx:debug 目标启动应用程序时。这将启动启用调试的应用程序。

前提条件

  • 基于 Maven 的应用程序

流程

  1. 在控制台中,导航到您的应用程序的目录。
  2. 启动应用程序并使用 -Ddebug.port 参数指定 debug 端口:

    $ mvn vertx:debug -Ddebug.port=$PORT_NUMBER

    这里的 $PORT_NUMBER 是您选择的未使用端口号。记住此号码用于远程调试器配置。

    使用 -Ddebug.suspend=true 参数使应用程序等待等待调试器启动。

4.1.2. 在 OpenShift 中启动应用程序处于调试模式

要在 OpenShift 上远程调试基于 Eclipse Vert.x 的应用,您必须将容器内的 JAVA_DEBUG 环境变量设置为 true,并配置端口转发,以便您可以从远程调试程序连接到您的应用。

前提条件

  • 在 OpenShift 上运行的应用。
  • 已安装 oc 二进制文件。
  • 在目标 OpenShift 环境中执行 oc port-forward 命令的功能。

流程

  1. 使用 oc 命令,列出可用的部署配置:

    $ oc get dc
  2. 将应用的部署配置中的 JAVA_DEBUG 环境变量设置为 true,它将 JVM 配置为打开端口号 5005 以进行调试。例如:

    $ oc set env dc/MY_APP_NAME JAVA_DEBUG=true
  3. 如果应用程序没有设置为在配置更改时自动重新部署,请重新部署应用程序。例如:

    $ oc rollout latest dc/MY_APP_NAME
  4. 配置本地机器到应用程序 pod 的端口转发:

    1. 列出当前运行的 pod,并找到包含您的应用程序的 pod:

      $ oc get pod
      NAME                            READY     STATUS      RESTARTS   AGE
      MY_APP_NAME-3-1xrsp          0/1       Running     0          6s
      ...
    2. 配置端口转发:

      $ oc port-forward MY_APP_NAME-3-1xrsp $LOCAL_PORT_NUMBER:5005

      在这里,$LOCAL_PORT_NUMBER 是本地机器上您选择的未使用端口号。记住此号码用于远程调试器配置。

  5. 完成调试后,取消设置应用程序 pod 中的 JAVA_DEBUG 环境变量。例如:

    $ oc set env dc/MY_APP_NAME JAVA_DEBUG-

其他资源

如果要从默认值更改 debug 端口,则可设置 JAVA_DEBUG_PORT 环境变量,即 5005

4.1.3. 将远程调试器附加到应用程序

当应用程序被配置为调试时,为它附加您选择的远程调试程序。在本指南中,涵盖了 Red Hat CodeReady Studio,但在使用其他程序时的步骤类似。

前提条件

流程

  1. 启动 Red Hat CodeReady Studio。
  2. 为应用程序创建新调试配置:

    1. Run→Debug Configuration
    2. 在配置列表中,双击 Remote Java 应用。这会创建一个新的远程调试配置。
    3. Name 字段中输入适合配置的名称。
    4. Project 字段中输入应用程序目录的路径。为方便起见,您可以使用 Browse…​ 按钮。
    5. Connection Type 字段设置为 Standard (Socket Attach) (如果尚未连接)。
    6. Port 字段设置为应用程序侦听调试的端口号。
    7. 应用。
  3. 点 Debug Configuration 窗口中的 Debug 按钮开始调试。

    要在首次时间后快速启动您的调试配置,请点击 Run→Debug History,并从列表中选择配置。

其他资源

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.