0

我正在使用 Randoop,Java 的自动测试生成器。

但是,当从命令行运行 Randoop 时,我似乎无法弄清楚如何正确指定类路径。

我通读了这个问题:Java Classpath error-cannot find my class of detail but my setup似乎有点不同。

我在 Windows 机器上运行。

整个项目结构如下所示:

cse331/
    bin/
        hw5/
            GraphNode.class
    src/
        hw5/
            GraphNode.java
    randoop-2.1.4.jar

(我认为还有一些其他文件,但这里并不重要)

我试着打电话:

java -ea -classpath randoop-2.1.4.jar:bin/* randoop.main.Main gentests --testclass=GraphNode --timelimit=20

但收到错误:

Error: Could not find or load main class randoop.main.Main

我尝试了几种变体,加载类路径的 .java 文件而不是 .class 文件,但到目前为止没有任何选项有效。如果我没有在 randoop-2.1.4 的末尾指定类路径,我会收到一条错误消息,指出找不到类 GraphNode。

设置只是第一步,我似乎无法走上正轨。

4

3 回答 3

1

最后,解决方案是从 bin/ 中删除星号,并像 Sumit 建议的那样包含分号。

java -ea -classpath randoop-2.1.4.jar;bin/ randoop.main.Main gentests --testclass=GraphNode --timelimit=20
于 2016-03-30T14:39:42.933 回答
1

设置类路径如下:

-classpath "randoop-2.1.4.jar;bin/*"

有关更多详细信息,请参阅设置类路径

于 2016-03-28T04:56:22.683 回答
0

试试这个:它肯定会消除这个错误。java -cp cse331/bin;randoop-2.1.4.jar randoop.main.Main gentests --testclass=hw5.GraphNode --timelimit=100。

如果您的项目是 maven 项目,请尝试包含所有依赖项。下载使用这个命令: mvn dependency:copy-dependencies

如果您对 randoop 有任何其他疑问,请告诉我。

于 2018-06-28T05:57:02.240 回答