【问题标题】:VSCode debugging Quarkus application using a profileVSCode 使用配置文件调试 Quarkus 应用程序
【发布时间】:2021-01-15 20:01:21
【问题描述】:

我正在使用 VSCode 来调试 Quarkus 应用程序,它与 quarkus 工具配合得很好。但是我找不到如何应用特定的 quarkus 配置,例如dev、staging 或 prod,因为它们在 application.properties 文件中定义。知道如何使用指定的配置文件启动调试器吗?

【问题讨论】:

    标签: java visual-studio-code quarkus vscode-debugger


    【解决方案1】:

    这并不能完全回答您的问题 - 我还没有找到从 Visual Studio Code 中启动该过程的方法。我使用的方法是使用所需的配置文件启动 Quarkus 应用程序(您的方法可能不同):

    ./gradlew quarkusDev
    

    在我的 launch.json 文件中,我添加了以下部分:

    {
      "type": "java",
      "name": "Quarkus",
      "request": "attach",
      "hostName": "localhost",
      "port": "5005"
    }
    

    接下来,我在调试器中运行了“Quarkus”配置文件,并将其附加到远程进程。请注意,这假设您正在从 localhost 运行 Quarkus,并且“在地址:5005 处侦听传输 dt_socket”。

    【讨论】:

      【解决方案2】:

      [假设你在 VS Code 中使用了很棒的 Quarkus 扩展]。假设您想创建一个新的启动配置以在 staging 配置文件中启动 Quarkus,同时保留 dev 配置文件的默认启动配置。在您的 .vscode/launch.json 中,添加一个新配置:

          {
              "preLaunchTask": "quarkusDev:staging",
              "type": "java",
              "request": "attach",
              "hostName": "localhost",
              "name": "Debug Quarkus application [Staging]",
              "port": 5005
          } 
      

      此启动配置引用了您还需要在 .vscode/tasks.json 中创建的新启动任务 (quarkusDev:staging)。这实际上定义了您希望 Quarkus 开始使用的特定配置文件,方法是将 -Dquarkus.profile 附加到命令:

          {
              "label": "quarkusDev:staging",
              "type": "shell",
              "isBackground": true,
              "group": "build",
              "command": "./gradlew quarkusDev --console=plain -Dquarkus.profile=staging",
              "windows": {
                  "command": ".\\gradlew.bat quarkusDev --console=plain -Dquarkus.profile=staging"
              },
              "problemMatcher": [
                  {
                      "pattern": [
                          {
                              "regexp": "\\b\\B",
                              "file": 1,
                              "location": 2,
                              "message": 3
                          }
                      ],
                      "background": {
                          "activeOnStart": true,
                          "beginsPattern": "^.*Starting a Gradle Daemon*",
                          "endsPattern": "^.*Quarkus .* started in .*\\."
                      }
                  }
              ]
          }
      

      【讨论】:

        猜你喜欢
        • 2018-09-05
        • 1970-01-01
        • 1970-01-01
        • 2023-03-12
        • 2019-06-27
        • 2016-08-28
        • 2017-12-11
        • 2019-12-04
        • 2019-01-12
        相关资源
        最近更新 更多