我正在尝试使用Eclipse设置一个非常简单的Cucumber测试环境。我下面的教程,并创建了所需的参考库项目:Cucumber测试包中的java.lang.NoClassDefFoundError
我已经创建了CucumberRunner.java文件,内容如下:
package cucumber;
import org.junit.runner.RunWith;
import cucumber.api.CucumberOptions;
import cucumber.api.junit.Cucumber;
@RunWith(Cucumber.class)
@CucumberOptions(
plugin = { "pretty", "json:target/cucumber.json" },
features = "src/cucumber"
)
public class CucumberRunner {
}
,并创建特征文件和步骤定义。如果我运行从,功能文件,测试运行正常。但是,如果我从CucumberRunner.java运行,我得到:
java.lang.NoClassDefFoundError: org/xmlpull/v1/XmlPullParserException
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
at java.lang.Class.privateGetPublicMethods(Class.java:2902)
at java.lang.Class.getMethods(Class.java:1615)
at cucumber.runtime.java.MethodScanner.scan(MethodScanner.java:40)
at cucumber.runtime.java.JavaBackend.loadGlue(JavaBackend.java:86)
at cucumber.runtime.Runtime.<init>(Runtime.java:92)
at cucumber.runtime.Runtime.<init>(Runtime.java:70)
at cucumber.runtime.Runtime.<init>(Runtime.java:66)
at cucumber.api.junit.Cucumber.createRuntime(Cucumber.java:80)
at cucumber.api.junit.Cucumber.<init>(Cucumber.java:59)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
我已经安装了黄瓜Eclipse插件按照另一个回答问题,所以我在一个总损失,为什么发生这种情况。如果我尝试添加JAR来包含缺少的库,我似乎将问题转移到缺少缺失的库。
我认为它必须与我使用的库的版本有关,但我是一个完全新手,并且没有如何解决这个问题的经验。
任何帮助都将不胜感激。
我有一个类似的问题,找不到其他类。我也有像你一样的包装黄瓜胶和跑步课。我尝试重命名黄瓜包,它的工作.. – Grasshopper
分享你的maven/ant构建文件,Junit/TestNG/something_else测试框架,testng.xml,如果你有一个和一个类文件。如果您的教程是免费的,请分享该链接。 – Sid
重命名黄瓜包工作。我觉得这既惊人又令人难以置信的烦人。感谢Grasshopper和Sid花时间回答。 –