如果将commons-lang jar添加到引用的库中,为什么会出现此错误

时间:2015-03-05 23:09:08

标签: java eclipse selenium

我下载了java-faker

http://dius.github.io/java-faker/

我解压缩它,做了maven包,在目标文件夹中我得到了faker的jar并将其添加到构建路径中。 Selenium带有公共语言,所以我不知道是什么导致了这个问题。

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/lang/math/RandomUtils
        at com.github.javafaker.service.RandomService.<init>(RandomService.java:14)
        at com.github.javafaker.Faker.<init>(Faker.java:40)
        at com.github.javafaker.Faker.<init>(Faker.java:32)
        at com.github.javafaker.Faker.<init>(Faker.java:28)
        at FirstProgram.main(FirstProgram.java:12)
    Caused by: java.lang.ClassNotFoundException: org.apache.commons.lang.math.RandomUtils
        at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
        ... 5 more

1 个答案:

答案 0 :(得分:1)

您可能需要在类路径中使用旧版本的commons-lang。

将commons-lang版本2.6添加到您的应用程序类路径中。 如果您使用的是maven,请添加:

<dependency>
    <groupId>commons-lang</groupId>
    <artifactId>commons-lang</artifactId>
    <version>2.6</version>
</dependency>