【问题标题】:Ant Junit5 : org.junit.platform.commons.util.PreconditionViolationException: Could not load class with nameAnt Junit5:org.junit.platform.commons.util.PreconditionViolationException:无法加载具有名称的类
【发布时间】:2018-06-29 06:09:14
【问题描述】:

我正在尝试从 Junit4 迁移到 Junit5。这是我正在使用的依赖项列表:

Dependencies

我能够使用 Eclipse 运行测试,但无法使用 Ant 运行它们。这是堆栈跟踪的样子:

Jun 29, 2018 1:50:39 AM org.junit.platform.launcher.core.DefaultLauncher handleThrowable
WARNING: TestEngine with ID 'junit-vintage' failed to discover tests
org.junit.platform.commons.util.PreconditionViolationException: Could not load class with name: microservicehelper.AuthMicroserviceHelperTest
    at org.junit.platform.engine.discovery.ClassSelector.lambda$getJavaClass$0(ClassSelector.java:73)
    at java.util.Optional.orElseThrow(Optional.java:290)
    at org.junit.platform.engine.discovery.ClassSelector.getJavaClass(ClassSelector.java:72)
    at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
    at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382)
    at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
    at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
    at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
    at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
    at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
    at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418)
    at org.junit.vintage.engine.discovery.ClassSelectorResolver.resolve(ClassSelectorResolver.java:29)
    at org.junit.vintage.engine.discovery.VintageDiscoverer.collectTestClasses(VintageDiscoverer.java:64)
    at org.junit.vintage.engine.discovery.VintageDiscoverer.discover(VintageDiscoverer.java:51)
    at org.junit.vintage.engine.VintageTestEngine.discover(VintageTestEngine.java:61)
    at org.junit.platform.launcher.core.DefaultLauncher.discoverEngineRoot(DefaultLauncher.java:130)
    at org.junit.platform.launcher.core.DefaultLauncher.discoverRoot(DefaultLauncher.java:117)
    at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:90)
    at org.apache.tools.ant.taskdefs.optional.junitlauncher.JUnitLauncherTask.execute(JUnitLauncherTask.java:93)
    at JUnit5.main(JUnit5.java:154)

【问题讨论】:

  • 你确定这个类在类路径上吗?
  • 是的类在类路径上。

标签: ant junit5


【解决方案1】:

显然在 ANT_HOME/lib 中添加 Junit5 依赖项解决了这个问题。 (我已经在 Build.xml 的类路径中提到过)

【讨论】:

    猜你喜欢
    • 2017-06-13
    • 2021-12-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-21
    • 2021-03-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多