Java 应用程序可以使用 JAR(Java 归档)文件打包。可以使用 dbx 调试 JAR 文件,如下例所示。
(dbx) debug myjar.jar |
开始调试文件名以 .jar 结尾的文件时,dbx 会使用在此 JAR 文件的清单中指定的 Main_Class 属性来确定主类。(主类是 JAR 文件内作为应用程序入口点的类。)如果使用全路径名或相对路径名来指定 JAR 文件,dbx 会使用目录名,并在 Main-Class 属性中将其作为类路径的前缀。
如果调试无 Main-Class 属性的 JAR 文件,可以使用 Java 2 平台标准版的 JarURLConnection 类中指定的 JAR URL 语法 jar:<url>!/{entry} 来指定主类的名称,如下例所示。
(dbx) debug jar:myjar.jar!/myclass.class (dbx) debug jar:/a/b/c/d/e.jar!/x/y/z.class (dbx) debug jar:file:/a/b/c/d.jar!/myclass.class |
对于这些示例中的每一个示例,dbx 都会执行以下操作:
将 ! 字符后指定的类路径作为主类(例如,/myclass.class 或 /x/y/z.class)来处理
将 JAR 文件名 ./myjar.jar、/a/b/c/d/e.jar 或 /a/b/c/d.jar 添加到类路径中
开始调试主类
如果使用 jvm_invocation 环境变量指定了 JVM 软件的定制启动(请参见定制 JVM 软件的启动),则不会将 JAR 文件名自动添加到类路径中。在这种情况下,必须在开始调试时将 JAR 文件名添加到类路径中。