前页 后页

Java JDWP调试器

Java提供了两种主要的调试技术:一种称为Java虚拟机工具接口(JVMTI)的基于进程内代理的系统,以及一种称为Java调试线协议(JDWP)的基于套接字的范例。 Java虚拟机可以命名其中之一,但不能同时命名,并且在启动JVM时必须配置该功能。

系统要求

  1. Enterprise Architect JDWP调试器将只能与以'JDWP'选项启动的JVM通信。这是命令行选项的示例:
    java -agentlib:jdwp = transport = dt_socket,address = localhost:9000,server = y,suspend = n -cp“ c:\ java \ myapp;%classpath%” demo.myApp“ param1”“ param2”
  2. 虚拟机当前不应连接到调试器。
  3. VM不能同时由Enterprise Architect和Eclipse调试。

分析器脚本设置

字段/按钮

行动

也可以看看

调试器

单击下拉箭头,然后选择Java(JDWP)。

执行脚本后,单击此单选按钮以运行调试器。

默认目录

不适用-留空。

申请途径

不适用-留空。

命令行参数

不适用-留空。

先建

不适用-留空。

显示控制台

不适用-留空。

显示诊断信息

不适用-留空。

连接

不适用-留空。

港口

在Java命令行选项中,在启动过程中将应用程序端口向前分配给VM进程。

Java命令行选项

主办

设置主机(默认为localhost)

如果VM在联网计算机上运行,请在此处输入网络名称或URL。

默认情况下,调试将尝试连接到您在本地计算机上指定的端口。

资源

这与Java中的classpath设置等效。

列出每个源树的根;指定至少一个根源路径。如果指定多个,则用分号隔开;例如:

c:\ myapp \ src ; c:\ myserver \ src

发生断点时,调试器将在此处列出的每个源树中搜索Java源。

记录中

启用或禁用来自调试器的其他信息的日志记录。

可能的值包括:

  • 真正
  • 1个
  • 0
  • 没有

输出量

指定要写入的本地日志文件的全名。如果该文件夹尚不存在,则不会创建任何日志。

日志文件通常包含调试器和VM之间发送的字节转储。

平台

选择Java。

配置调试端口

调试器一次只能调试一个VM。它使用单个端口与VM进行通信。创建虚拟机时,分配了要调试的应用程序的端口。

本地调试

如果Enterprise Architect和Java VM都在同一台计算机上运行,则可以执行本地调试。必须在启用了JDWP传输的情况下启动VM-有关命令行选项规范,请参阅Oracle上有关Java平台调试器体系结构(JPDA)的文档。例如:

java -agentlib:jdwp = transport = dt_socket,address = localhost:9000,server = y,suspend = n -cp“ c:\ samples \ java \ myapp;%classpath%” samples.MyApp“ param1”“ param2”

在此示例中,Analyzer脚本的值将为“ host:localhost”和“ port:9000”。

远程调试

如果Enterprise Architect在本地计算机上运行,而Java VM在远程计算机上运行,则可以执行远程调试。必须在启用了JDWP传输的情况下启动VM-有关命令行选项规范,请参见Oracle上JPDA上的文档。这是一个示例,其中远程计算机的网络名称为testmachine1:

java -agentlib:jdwp = transport = dt_socket,address = 9000,server = y,suspend = n -cp“ c:\ samples \ java \ myapp;%classpath%” samples.MyApp“ param1”“ param2”

请注意,地址中没有主机名。这意味着VM将侦听来自任何计算机的连接。在此示例中,分析器脚本的值将为“主机:testmachine1”和“端口:9000”。