Java 尝试使用烟尘时出现NoClassDefFoundError异常

Java 尝试使用烟尘时出现NoClassDefFoundError异常,java,noclassdeffounderror,call-graph,soot,Java,Noclassdeffounderror,Call Graph,Soot,我正在尝试使用烟尘生成调用图。但是,当我将某个类传递给它进行分析时,会抛出异常NoClassDefFoundError。我使用以下两个教程来执行一些命令: 和 我已经将要分析的java源代码放在同一个类路径中。因此,当我即将执行时,我使用“.”来指定当前目录。以下是我正在执行的命令: java -cp jasminclasses-2.5.0.jar:sootclasses-2.5.0.jar:plyglot-1.3.5.jar:.soot.Main -cp . MainFrame 即使我不使用

我正在尝试使用烟尘生成调用图。但是,当我将某个类传递给它进行分析时,会抛出异常NoClassDefFoundError。我使用以下两个教程来执行一些命令: 和

我已经将要分析的java源代码放在同一个类路径中。因此,当我即将执行时,我使用“.”来指定当前目录。以下是我正在执行的命令:

java -cp jasminclasses-2.5.0.jar:sootclasses-2.5.0.jar:plyglot-1.3.5.jar:.soot.Main -cp . MainFrame
即使我不使用-cp并立即调用大型机,也会产生相同的错误


有人知道为什么会抛出这种异常吗?

第一个类路径字符串看起来很奇怪,实际上您没有调用
coomy.Main
类。尝试一下:

java -cp jasminclasses-2.5.0.jar:sootclasses-2.5.0.jar:plyglot-1.3.5.jar soot.Main -cp . MainFrame
编辑

关于您最后的评论,它看起来像一个典型的类路径错误

如果执行上面问题中的行,Java会尝试在类
大型机
(默认包)中启动
main
方法,但找不到该类。使用my(正确的!)命令,java尝试查找
cooth.Main


再次仔细检查类路径:必须提供到库的正确路径。实际命令要求所有三个库加上
MainFrame.class
都在当前目录中。

请在线程“main”中添加未找到的类的全名。异常java.lang.NoCLassDefFOundError:MainFrame由以下原因引起:java.lang.ClassNotFoundException:MainFrame我假设生成错误是因为MainFrame本身,而不是因为烟尘。Main正在生成一些错误。您是否尝试使用相对的完整路径?我尝试过,并且正在生成相同的错误我尝试过这样做输入的形式,在这种情况下,它给我一个NoClassDefFoundError在烟灰/主。。。。当我使用我发布的那一个时,我甚至设法获得了帮助内容和版本详细信息,所以我猜这不是产生问题的原因。什么类没有找到,
cooth.Main
或分析的类?如果我在命令行中放置您指定的命令,生成的错误将命名为cooth.Main类。然而,当我使用我声明的命令时产生的错误,将生成一个关于分析类的错误。。。所以在这种情况下,烟灰。Main不是生成错误的