java - WebDriver 和 ChromeDriver : Unable to fix org/json/JSONException error

标签 java selenium webdriver selenium-chromedriver

我刚开始使用 Selenium WebDriver。我正在尝试使用 ChromeDriver,以下是我的代码:

public class WebScraper  {
    public WebScraper() {

    }

    public WebDriver driver = new ChromeDriver();

    public void openTestSite() {
        driver.navigate().to("https://google.com");
    }


    public void enter(String word) {

         WebElement query_editbox = 
         driver.findElement(By.id("query")); 
         query_editbox.sendKeys(word);
         query_editbox.sendKeys(Keys.RETURN);

    }

//    public void getText()  {
//        //List<WebElement> searchResults = 
//        driver.findElements(By.xpath("//div[@id='mid']/div")); 
//        // Writer writer = new BufferedWriter(new 
//        OutputStreamWriter(new FileOutputStream("status.txt"), 
//        "utf-8"));
//        //int[] index = {0};
//
//    WebElement result=driver.findElement(By.id("mid"));
//    System.out.println(result.getText());
//}

public static void main(String[] args) throws IOException  {
    System.setProperty("webdriver.chrome.driver", "chromedriver");        
    System.out.println("Hello");

    WebScraper webScraper = new WebScraper();
    webSrcapper.openTestSite();
    webSrcapper.enter("avoir");
    //webSrcapper.getText();
    System.out.println("Hello");

}
}

我收到以下错误:

Exception in thread "main" java.lang.NoClassDefFoundError: org/json/JSONException
    at org.openqa.selenium.remote.RemoteWebDriver.init(RemoteWebDriver.java:110)
    at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:92)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:144)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:86)
    at WebScraper.<init>(WebScraper.java:15)
    at WebScraper.main(WebScraper.java:47)
Caused by: java.lang.ClassNotFoundException: org.json.JSONException
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 6 more

有人可以帮我解决这个问题并告诉我为什么我首先会收到此错误吗?

谢谢!

最佳答案

错误

Exception in thread "main" java.lang.NoClassDefFoundError: org/json/JSONException

是因为它缺少依赖org.json添加这个https://mvnrepository.com/artifact/org.json/json/20180813

关于java - WebDriver 和 ChromeDriver : Unable to fix org/json/JSONException error,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54172871/

相关文章:

google-chrome - 无法读取 master_preferences 文件 - Watir

javascript - 使用 NightwatchJS 将焦点更改为父元素

java - Selenium [Java] PageFactory 设计 : Where do I write my Assertions following Page Object Model

selenium - 使用 xpath (Selenium Webdriver) 确认嵌套 WebElement 的存在

java - Log4j2 环境中单个软件组件的 Logger 对象

python - 如何使用 selenium + chrome webdriver + python 忽略警报?

javascript - 如何从 WebdriverIO 中的 WebElement 继承

JAVA 正则表达式 - 如何排除某个电子邮件扩展名?

java - null是java中的一个类吗?

java - 如何在java中序列化OBJECT ARRAY?