我将log4j从1.x升级到2.3。设置maven依赖项后,我的项目正在构建,应用程序运行正常。
但是在建立时,在测试目标中,在已经存在的variouse单元测试类中会出现下面提到的错误。
我可以使用@PowerMockIgnore找到解决方法。但是担心要更改已经写好的所有100个文件。
ERROR StatusLogger Could not reconfigure JMX java.lang.LinkageError: loading constraint violation: loader "org/powermock/core/classloader/MockClassLoader@5fa95fa9" previously initiated loading for a different type with name "javax/management/MBeanServer" defined by loader "com/ibm/oti/vm/BootstrapClassLoader@7a5c7a5c".
答案 0 :(得分:4)
@see Mockito + PowerMock LinkageError while mocking system class
尝试将此注释添加到Test类:
@PowerMockIgnore("javax.management.*")
为我工作。
并为我工作
答案 1 :(得分:0)
如果您有许多测试类,并使用1.7.0版以上的powermock,则可以指定全局配置。请参见power mock configuration,它带有一个示例项目,其中已演示了其用法,请参见example。
配置文件应具有:
powermock.global-ignore=javax.management.*