我得到的确切错误是:
错误:由于异常无法加载类" MainClass“:java.lang.NoClassDefFoundError: MainClass(错误名称:MainClass)
包含的是类文件的Zip,我在以下文件路径中找到了该类文件:
C:\Eclipse\Workspaces\Refactor\sootparser-master\sootparser-example-grocery\target\classes\thiagodnf\sootparser\example\grocery
可以在以下链接中找到类文件:
在他们自己的文件夹中有很多这样的链接,所以如果有比Gdrive链接更好的共享方式,请告诉我。链接上的文件夹称为“杂货”,它应该作为文件路径末尾的文件夹放置(它不是/杂食/杂货)
我试图运行的命令是: C:\Eclipse\randoop> java -Xmx3000m -classpath C:\Eclipse\Workspaces\Refactor\soot parser-master\sootparser-example-grocery\target\classes\thiagodnf\sootparser\exa mple\grocery;C:/Eclipse/randoop/randoop-all-4.1.1.jar randoop.main.Main gentests --testclass=MainClass
源代码存储在此路径上:
C:\Eclipse\Workspaces\Refactor\sootparser-master\sootparser-example-grocery\src\main\java\thiagodnf\sootparser\example\grocery
指向源.java文件的链接是:
我重命名了这个文件夹,所以它不像上传时那么让人困惑,但是它的原名是“杂货”,就像上面的路径不嵌套在里面(/杂食/杂货)
我的java版本是:
> > java Runtime Environment (build 1.8.0_201-b09)
> > Java HotSpot(TM) 64-Bit
> > Server VM (build 25.201-b09, mixed mode)version "1.8.0_201" Java(TM) SE到目前为止,我已经尝试了不同的位置和路径来锁定"MainClass“,我已经将它移到根目录之外,并将其放置在与randoop文件相同的目录中。Randoop似乎运行在我的机器上的其他类文件上,所以我担心的是,"MainClass“不是以randoop可以读取的方式格式化的,就是我的命令或位置路径遗漏了一些东西。
短期而言,我希望它能在MainClass上运行,长期来看,我需要做一个类文件列表,并对不同模块中的所有类运行它。
感谢你所能做的一切来帮助我,或者指出正确的方向。如果我能提供更多的信息或澄清,请告诉我。
谢谢你!!
发布于 2019-03-24 16:44:18
请参阅:
https://dzone.com/articles/java-classnotfoundexception-vs-noclassdeffounderro
这给出了两种异常/错误状态ClassNotFoundException和NoClassDefFoundError的含义以及两种状态之间的区别。
希望这将有助于解决你的问题。
简而言之,看起来存在一些版本控制问题,即在代码中使用的类(或代码所使用的代码)中的某些类或方法对运行时不可用。
https://stackoverflow.com/questions/55325898
复制相似问题