Randoop 执行错误,由于异常而无法加载类



我得到的确切错误是:

错误:由于异常,无法加载类"主类": java.lang.NoClassDefFoundError: MainClass (错误的名称: thiagodnf/sootparser/example/grocery/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:EclipseWorkspacesRefactorsoot parser-mastersootparser-example-grocerytargetclassesthiagodnfsootparserexa mplegrocery;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 jar 文件相同的目录中。Randoop 似乎针对我机器上的其他一些类文件运行,所以我担心的是"MainClass"没有以 randoop 可以读取它的方式格式化,或者我的命令或位置路径缺少某些内容。

短期内我希望它针对 MainClass 运行,从长远来看,我需要做一个类文件列表,并针对不同模块中的所有类运行它。

感谢您能做的任何事情来帮助我,或为我指出正确的方向。如果我能提供更多信息或澄清,请告诉我。

谢谢!!

請參閱:
https://dzone.com/articles/java-classnotfoundexception-vs-noclassdeffounderro
這對 ClassNotFoundException 和 NoClassDefFoundError 的兩個異常/錯誤狀態的含義以及狀態之間的差異進行了徹底的解釋。
希望这将有助于解决您的问题。

简而言之,它看起来存在一些版本控制问题,即代码中使用的类(或代码使用的代码)中的某些类或方法对运行时不可用。

最新更新