gpt4 book ai didi

java - ClassNotFoundException : junit. framework.TestCase 无法被 org.eclipse.xtext.junit_2.4.3.v201309030823 找到

转载 作者:搜寻专家 更新时间:2023-10-30 20:01:06 25 4
gpt4 key购买 nike

我对这个错误感到困惑:

java.lang.NoClassDefFoundError: junit/framework/TestCase
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:792)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.defineClass(DefaultClassLoader.java:188)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.defineClassHoldingLock(ClasspathManager.java:638)
...
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.loadClass(RemoteTestRunner.java:693)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.loadClasses(RemoteTestRunner.java:429)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:452)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
at org.eclipse.pde.internal.junit.runtime.RemotePluginTestRunner.main(RemotePluginTestRunner.java:62)
at org.eclipse.pde.internal.junit.runtime.CoreTestApplication.run(CoreTestApplication.java:23)
...
Caused by: java.lang.ClassNotFoundException: junit.framework.TestCase cannot be found by org.eclipse.xtext.junit_2.4.3.v201309030823
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:501)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 78 more

当我将 Xtext DSL 的测试作为插件测试运行时(即在内部启动新的 Eclipse 平台时),会发生异常。这发生在我的任何代码执行之前。

当我查看插件依赖项时,我可以看到 org.junit_4.11.0.v201303080030.jar 在类路径中,我还看到了 /.../workspace/。元数据/.plugins/org.eclipse.pde.core/.external_libraries/org.junit_4.11.0.v201303080030/junit.jar

所以 OSGis 绝对应该能够解决这种依赖性。

Xtext 2.4.3 是否可以与 JUnit 4.11 一起使用,还是我必须将我的 Eclipse 安装降级到 JUnit 4.10?

最佳答案

两点

首先

检查您的 Project Properties->Java Build Path->Libraries(选项卡)。 JUnit 应该存在,尽管它通常会出现在构建中。

检查项目的 Run Configurations->JUnit->Classpath(选项卡)。 JUnit 应该在您的项目的用户条目下。

第二

检查你有以下插件

org.eclipse.xtext.xbase.junit
org.junit (3.8.2)
org.junit (4.8.2)

[编辑] 这让我走上了正确的轨道。要修复错误,请确保您在 target platform 中有 org.junit 3.8。 !

解释:以上错误说明Eclipse本身无法启动。似乎 JUnit 运行器依赖于 JUnit 3.8。它不会被使用,但没有它,整个平台无法初始化。

您可以通过查看堆栈跟踪来了解您是否遇到同样的问题:它是否包含 RemotePluginTestRunner.main

要修复错误,请将 org.junit 3.8 包添加到您的目标平台。

关于java - ClassNotFoundException : junit. framework.TestCase 无法被 org.eclipse.xtext.junit_2.4.3.v201309030823 找到,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21165915/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com