Exception in thread "main" java.lang.NoClassDefFoundError: org/mockito/Mockito
Exception in thread "main" java.lang.NoClassDefFoundError: org/mockito/Mockito
我是 Mockito
的新手,正在尝试学习 Here,
我已经完成的所有配置(使用 Win-10)在教程中提到。
在环境变量中设置:
Mockito 版本:
<!-- https://mvnrepository.com/artifact/org.mockito/mockito-all -->
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<version>2.0.2-beta</version>
<scope>test</scope>
</dependency>
我从上面提到的例子开始。但是当我 运行 测试我的 class 时,它显示以下异常:
Exception in thread "main" java.lang.NoClassDefFoundError: org/mockito/Mockito
at com.mockitotest.PortfolioTester.setUp(PortfolioTester.java:23)
at com.mockitotest.PortfolioTester.main(PortfolioTester.java:14)
Caused by: java.lang.ClassNotFoundException: org.mockito.Mockito
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 2 more
我不知道这里出了什么问题。有人可以帮助我吗?
范围test
表示依赖项(二进制文件)仅在maven的测试阶段使用。不过,它们并未随最终目标 jar 一起交付。所以如果你运行自己测试(而不是让maven来做),你最好保留默认的运行时间范围,如下:
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<version>2.0.2-beta</version>
</dependency>
请注意,我是在以下情况下得到的。
A 依赖于 B。B 对 Mockito 具有“编译”依赖性,并在其“正常源代码”中使用 Mockito。
A 依赖于 B 和 Mockito。
然后是相同的消息“NoClassDefFound org.mockito.Mockito”。
打开 B 的 pom 的“对 Mockito 的依赖”正在从父级继承“测试”。显然,这种“更多的本地依赖性”会覆盖另一个。
将 Mockito 作为非测试依赖项共享时会出现问题。除非它始终且仅用于单元测试,否则它将可用。
我是 Mockito
的新手,正在尝试学习 Here,
我已经完成的所有配置(使用 Win-10)在教程中提到。
在环境变量中设置:
Mockito 版本:
<!-- https://mvnrepository.com/artifact/org.mockito/mockito-all -->
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<version>2.0.2-beta</version>
<scope>test</scope>
</dependency>
我从上面提到的例子开始。但是当我 运行 测试我的 class 时,它显示以下异常:
Exception in thread "main" java.lang.NoClassDefFoundError: org/mockito/Mockito at com.mockitotest.PortfolioTester.setUp(PortfolioTester.java:23) at com.mockitotest.PortfolioTester.main(PortfolioTester.java:14) Caused by: java.lang.ClassNotFoundException: org.mockito.Mockito at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) ... 2 more
我不知道这里出了什么问题。有人可以帮助我吗?
范围test
表示依赖项(二进制文件)仅在maven的测试阶段使用。不过,它们并未随最终目标 jar 一起交付。所以如果你运行自己测试(而不是让maven来做),你最好保留默认的运行时间范围,如下:
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<version>2.0.2-beta</version>
</dependency>
请注意,我是在以下情况下得到的。
A 依赖于 B。B 对 Mockito 具有“编译”依赖性,并在其“正常源代码”中使用 Mockito。
A 依赖于 B 和 Mockito。
然后是相同的消息“NoClassDefFound org.mockito.Mockito”。
打开 B 的 pom 的“对 Mockito 的依赖”正在从父级继承“测试”。显然,这种“更多的本地依赖性”会覆盖另一个。
将 Mockito 作为非测试依赖项共享时会出现问题。除非它始终且仅用于单元测试,否则它将可用。