使用 jdb 在 java 中调试:"Error: impossible to find or load the main class"



这是我的第一个Java项目,我想让我们jdb作为调试工具,但我遇到了一些问题。你能帮我吗?

具有"main"功能的文件是"Frame.java"。我在同一剧目中还有很多其他.java文件,它们都是同一个包的一部分。

要编译,我使用:

javac -d classes/ -cp classes/ *.java

所以我的.class文件在目录类/包名/

要执行程序,我使用:

java -cp classes/ packagename.Frame

我不确定这是否是最好的方法,但它一直在为我现在想做的一切工作。

为了调试,这是我尝试的许多命令中的两个的输出:

$ jdb Frame
Initializing jdb ...
> stop in Frame.main
Deferring breakpoint Frame.main.
It will be set after the class is loaded.
> run
run Frame
Set uncaught java.lang.Throwable
Set deferred uncaught java.lang.Throwable
> 
VM Started: Erreur : impossible de trouver ou charger la classe principale Frame
The application exited

第二个:

$ jdb -launch Frame
Set uncaught java.lang.Throwable
Set deferred uncaught java.lang.Throwable
Initializing jdb ...
> 
VM Started: No frames on the current call stack
main[1] next
> Erreur : impossible de trouver ou charger la classe principale Frame
The application exited

错误消息表示"错误:无法找到或加载主类帧"。

我做错了什么?

提前谢谢你。

还需要向jdb提供classpath。以下命令有效。

jdb -classpath classes1 packagename.mainclass
$ jdb -classpath  classes1 packagename.mainclass
Initializing jdb ...
> run
run packagename.mainclass
Set uncaught java.lang.Throwable
Set deferred uncaught java.lang.Throwable
>
VM Started: Hello//...........
The application exited

相关内容

  • 没有找到相关文章

最新更新