1 回答

TA贡献1895条经验 获得超7个赞
发现了问题。该问题与使用的 Jmockit 版本有关。在我将 JMockit 版本恢复到 1.42 后问题得到解决,
<dependency>
<groupId>org.jmockit</groupId>
<artifactId>jmockit</artifactId>
<version>1.42</version>
<scope>test</scope>
</dependency>
这个问题与构建可用于将类改造为模拟对象的工具密切相关。要运行 JMockit,需要将 Jmockit JAR 作为 java 代理传递。在 1.43 之前,如果没有通过 java 代理,JMockit 库会搜索项目的依赖项并将其自动添加到 VM 对象中。在 1.42 之后,JMockit 开发人员认为这种查找 JAR 的方式不是一个好的标准,因此被完全删除。从而需要手动传递java代理。
以下是与该问题相关的一些参考链接,
https://github.com/jmockit/jmockit1/issues/540#issuecomment-444316617
https://github.com/jmockit/jmockit1/issues/546
https://github.com/jmockit/jmockit1/issues/568
解决此类问题的方法是
移至版本 1.42或
遵循 JMockit 开发人员的这个示例并执行相同的操作。
https://github.com/jmockit/jmockit1/blob/master/samples/petclinic/pom.xml
添加回答
举报