java.lang.NoClassDefFoundError: org/w3c/dom/ElementTraversal [英] java.lang.NoClassDefFoundError: org/w3c/dom/ElementTraversal
问题描述
我正在尝试使用页面工厂和页面对象模型运行 Java 项目,我想在 Chrome、IE 和 Firefox 上运行它,但我无法在 Firefox 上运行它,浏览器没有打开,我我收到此错误:java.lang.NoClassDefFoundError: org/w3c/dom/ElementTraversal
I am trying to run a Java project using page factory and page object model, I want to run it on Chrome, IE and on Firefox, but I am not able to run it on Firefox, the browser is not opening, I am getting this error : java.lang.NoClassDefFoundError: org/w3c/dom/ElementTraversal
我的代码是:
@BeforeMethod
public static void openBrowser() {
String browser = "";
if (browser.equalsIgnoreCase("chrome")){
System.setProperty("webdriver.chrome.driver", "src\\test\\Resources\\BrowserDrivers\\chromedriver.exe");
driver = new ChromeDriver();
}
else if (browser.equalsIgnoreCase("ie")){
System.setProperty("webdriver.ie.driver", "src\\test\\Resources\\BrowserDrivers\\IEDriverServer.exe");
driver = new InternetExplorerDriver();
}
else {
driver = new FirefoxDriver();
}
driver = new FirefoxDriver();
driver.get("http://www.google.com/");
driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);
driver.manage().window().maximize();
}
@AfterMethod
public static void closeBrowser(){
driver.quit();
}
推荐答案
参见例如这个 Github issue,一些依赖项可能会拖入过时可能导致此问题的 xml-apis 版本,对我有用的解决方案是添加对 xml-apis 的特定依赖项,例如与 Maven 类似
See e.g. this Github issue, some dependencies can drag in an outdated version of xml-apis which can cause this, a solution that worked for me was to add a specific dependency on xml-apis, e.g. with Maven something like
<dependency>
<groupId>xml-apis</groupId>
<artifactId>xml-apis</artifactId>
<version>1.4.01</version>
</dependency>
这篇关于java.lang.NoClassDefFoundError: org/w3c/dom/ElementTraversal的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!