1.15. 调试您的红帽构建的 Quarkus 项目
当红帽构建的 Quarkus 以开发模式启动时,会默认启用调试,并调试器侦听端口 5005
,而不暂停 JVM。您可以从命令行或配置系统属性来启用和配置 Quarkus 的调试功能。您还可以使用 Quarkus CLI 调试项目。
先决条件
- 您已创建了红帽构建的 Quarkus Maven 项目。
- 可选: 已安装 Quarkus 命令行界面(CLI),这是可用于编译和调试项目的方法之一。如需更多信息 ,请参阅安装 Quarkus CLI。
Quarkus CLI 主要用于开发目的,包括创建、更新和构建 Quarkus 项目等任务。但是,红帽不支持在生产环境中使用 Quarkus CLI。
流程
使用以下方法之一控制调试:
通过配置系统属性来控制调试器
更改
debug
系统属性的以下值之一,其中PORT
是调试器侦听的端口:-
false
:JVM 在禁用调试模式的情况下启动。 -
正确
: JVM 以 debug 模式启动,并侦听端口5005
。 -
客户端
: JVM 以客户端模式启动,并尝试连接到localhost:5005
。 -
PORT
: JVM 以调试模式启动,并侦听PORT
。
-
要在以 debug 模式运行时挂起 JVM,请将
suspend
系统属性的值设置为以下值之一:-
Y
或true
:调试模式 JVM 启动暂停。 -
n
或false
:调试模式 JVM 在不暂停的情况下启动。
-
从命令行控制调试器
要使用暂停的 JVM 以调试模式编译和启动 Quarkus 应用程序,请使用以下方法之一:
使用 Maven:
./mvnw quarkus:dev -Dsuspend
使用 Quarkus CLI:
quarkus dev --suspend
为特定主机网络接口启用调试器
在开发模式中,默认情况下,Quarkus 会将 debug 主机接口设置为 localhost
。
要为特定主机网络接口启用调试器,您可以使用以下方法之一使用 -DdebugHost
选项:
使用 Maven:
./mvnw quarkus:dev -DdebugHost=<host-ip-address>
使用 Quarkus CLI:
quarkus dev --debug-host=<host-ip-address>
其中 < host-ip-address
> 是您要启用调试的主机网络接口的 IP 地址。
要在所有主机接口上启用调试,请将 < host-ip-address&
gt; 替换为以下值:
0.0.0.0