远程调试
使用此启动配置可以通过连接到远程JVM或使调试器监听传入连接来进行远程调试。
启动配置属性
名称 |
描述 |
---|---|
type |
描述 type 调试器的类型。对于运行和调试Java代码,应将其设置为javadbg。 |
name |
启动配置名称。 |
env |
额外的环境变量 |
skipBuild |
跳过程序的构建过程(设置为true)或不跳过(设置为false)。 |
temporary |
指示启动配置是否为临时的(设置为true)还是永久的(设置为false)。如果临时启动配置数量超过指定限制,CodeArts IDE会自动删除最不常用的配置。有关详细信息,请参阅启动配置。 |
killPrevSession |
终止具有相同名称的先前运行会话(设置为true),或中止启动(设置为false)。 |
debuggerMode |
调试器模式,可以设置为attach(连接到远程JVM)或listen(监听传入连接)。默认情况下,使用attach模式。 |
autoRestart |
仅在debuggerMode设置为listen时可用,定义调试器在远程JVM断开连接后是否自动重启。默认情况下,使用false。 |
useSocketTransport |
定义是否使用套接字传输来连接进程。默认情况下,使用true。否则,当设置为false时,使用共享内存。 |
host |
主机应用程序运行的机器的地址。默认情况下,使用127.0.0.1。 |
port |
目标机器上的连接端口。默认情况下,使用5005。 |
启动配置示例
您可以使用提供的示例作为远程调试场景的示例。
主机应用程序的启动配置是一个常规的Java类配置。它应该包含在vmOptions下提供的特殊参数,以便应用程序使用调试代理启动,并且调试器能够连接到它。
{ "type": "javadbg", "name": "Java Class", "request": "launch", "vmOptions": "-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=127.0.0.1:5005", "mainClass": { "name": "com.example.App", "console": "internal" } }
远程调试的启动配置应该使用提供给主机应用程序启动配置的连接参数。
{ "type": "javadbg", "name": "Remote Debug (Attach to remote JVM)", "request": "launch", "skipBuild": true, "remote": { "debuggerMode": "attach", "useSocketTransport": true, "host": "127.0.0.1", "port": "5005" } }