Java jdbc在步骤输出中不显示代码行



尝试从命令行学习jdbc。从教程中,我希望看到步进行时的代码行输出,但我没有。

下面是我编译的示例代码:

public class Main {
public static void main(String[] args) {
System.out.println("Hello world!");
System.out.println("Hello world! line 2");
System.out.println("Hello world! line 3");
}
}
$ ~/jdk-18.0.2.1/bin/jdb.exe Main
Initializing jdb ...
> stop at Main.main
Deferring breakpoint Main.main.
It will be set after the class is loaded.
> run
run Main
Set uncaught java.lang.Throwable
Set deferred uncaught java.lang.Throwable
>
VM Started: Set deferred breakpoint Main.main
Breakpoint hit: "thread=main", Main.main(), line=3 bci=0
main[1] step
> Hell
Step completed: o world!
"thread=main", Main.main(), line=4 bci=8
main[1] step
> Hello world! line 2
Step completed: "thread=main", Main.main(), line=5 bci=16
main[1]

注意,这里显示的是输出,但我希望看到即将执行的代码行,以及显示的行号,如:

3       System.out.println("Hello world!");

我看过有这种情况的屏幕截图的教程,我想知道我是否有一个缺失的设置或错误的jdbc版本或其他东西。

您可以使用选项列表显示当前位置周围的行

在AVD内调试android应用程序时遇到同样的问题。即使我定义了正确的-sourcepath,我也无法列出源代码。

我需要从正确的目录执行jdbc。如果类属于任何包,例如类MainActivity属于包org.gradle.samples,那么您的项目文件夹包含以下目录:

yourProject/
├── src
│   └── main
│       └── java
│           └── org
│               └── gradle
│                   └── samples
│                       └── MainActivity.java

然后您必须从<pathToYourProject>/src/main/java执行jdb,其中JDB-sourcepath也是<pathToYourProject>/src/main/java

最新更新