我正在研究 Netbeans。我添加了一个库 selenium-java-2.31.0。但它显示异常。我添加了这个库所依赖的所有库。
我按照此链接在 netbeans 中添加库。
我的代码:-
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import java.io.IOException;
import java.net.URI;
import java.net.URISyntaxException;
import java.util.Iterator;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
public static void main(String[] args) throws IOException, URISyntaxException {
String url1 = "http://www.jabong.com/giordano-P6868-Black-Analog-Watch-183702.html";
Document doc1 = Jsoup.connect(url1).get();
WebDriver driver = new FirefoxDriver();
driver.get(url1);
Elements tag_list = doc1.getAllElements();
for( Element tag1 : tag_list ) {
Point point=driver.findElement(By.id(tag1.id())).getLocation();
System.out.println("X Position : " + point.x);
System.out.println("Y Position : " + point.y);
}
}
例外
Exception in thread "main" java.lang.NoClassDefFoundError: com/google/common/base/Function
at template_matching.Template_matching.main(Template_matching.java:275)
Caused by: java.lang.ClassNotFoundException: com.google.common.base.Function
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
... 1 more
Java Result: 1
BUILD SUCCESSFUL (total time: 2 seconds)
帮我解决这个问题。为什么会抛出这个异常?
编辑 1
Exception in thread "main" java.lang.NoClassDefFoundError: org/json/JSONException
at org.openqa.selenium.firefox.FirefoxProfile.<init>(FirefoxProfile.java:89)
at org.openqa.selenium.firefox.FirefoxProfile.<init>(FirefoxProfile.java:79)
at org.openqa.selenium.firefox.FirefoxProfile.<init>(FirefoxProfile.java:67)
at org.openqa.selenium.firefox.FirefoxDriver.getProfile(FirefoxDriver.java:260)
at org.openqa.selenium.firefox.FirefoxDriver.startClient(FirefoxDriver.java:236)
at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:110)
at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:190)
at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:183)
at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:179)
at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:92)
at template_matching.Template_matching.main(Template_matching.java:275)
Caused by: java.lang.ClassNotFoundException: org.json.JSONException
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
... 11 more
Java Result: 1
编辑 2
现在我转向 maven,认为它会下载所有依赖库。但现在它显示了不同的错误。
编辑第 3 号
由于它显示了 firefox 的一些问题,我用 Chrome 替换了 firefox。这次删除了先前的错误。但是一个新的出现了。请看这个。
编辑编号 4
编辑第 5 号
现在我再次转移到Firefox,并获得了页面,但它卡住了。为什么 ?
下面是我得到的错误快照。