java.lang.NoSuchMethodError:com.google.gson.GsonBuilder.setLenient()Lcom / google / gson / GsonBuilder;通过ChromeDriver启动Chrome

时间:2018-05-29 14:06:50

标签: google-chrome selenium-webdriver selenium-chromedriver

您好,我在启动驱动程序时遇到此问题。

Starting ChromeDriver 2.35.528161 (5b82f2d2aae0ca24b877009200ced9065a772e73) on port 4097
Only local connections are allowed.
Exception in thread "main" java.lang.NoSuchMethodError: com.google.gson.GsonBuilder.setLenient()Lcom/google/gson/GsonBuilder;
    at org.openqa.selenium.json.Json.<clinit>(Json.java:47)
    at org.openqa.selenium.logging.profiler.HttpProfilerLogEntry.constructMessage(HttpProfilerLogEntry.java:37)
    at org.openqa.selenium.logging.profiler.HttpProfilerLogEntry.<init>(HttpProfilerLogEntry.java:29)
    at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:141)
    at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:83)
    at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:601)
    at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:219)
    at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:142)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:181)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:168)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:123)
    at isf.Login.main(Login.java:21)

任何人都可以告诉我错过了什么..因为我正在使用另一个项目并且它在那里工作得很好。

2 个答案:

答案 0 :(得分:3)

我遇到了同样的问题,并使用以下方法解决了问题: 如果您在第47行检查JSON类,则缺少setLenient()

此问题可能是由于Gson版本中存在冲突。

转到您的存储库:

  

C:\ Users \用户名\的.m2 \库\ COM \谷歌\代码\ GSON

删除所有现有文件夹。

现在,在你的pom文件中添加以下maven依赖项:

<dependency>
    <groupId>com.google.code.gson</groupId>
    <artifactId>gson</artifactId>
    <version>2.8.5</version>
    <scope>provided</scope>
</dependency>

重新构建pom.xml文件并执行脚本。

答案 1 :(得分:0)

如果您使用的是maven,则应添加以下依赖项:

    <dependency>
        <groupId>com.google.code.gson</groupId>
        <artifactId>gson</artifactId>
        <version>2.8.5</version>
    </dependency>

那应该解决它。 Gson包版本应该与最新的Selenium版本相关联。