java.lang.NoSuchMethodError:com.google.gson.GsonBuilder.setLenient()Lcom/google/gson/GsonBuilder; [英] java.lang.NoSuchMethodError: com.google.gson.GsonBuilder.setLenient()Lcom/google/gson/GsonBuilder;

查看:184
本文介绍了java.lang.NoSuchMethodError:com.google.gson.GsonBuilder.setLenient()Lcom/google/gson/GsonBuilder;的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我尝试在3.11中创建RemoteWebDriver时,在下面看到此错误.直到3.10为止,它的效果都很好.我现在已经恢复到3.10.

When I try to create a RemoteWebDriver in 3.11, I see this error below. This worked fine up through 3.10. I've reverted to 3.10 for now.

我尝试从Google添加gson jar,但仍然看到相同的错误.还有其他人看到吗?我正在将一台硒服务器作为集线器,然后运行同样的问题,使用ff或chrome的webdriver阻止了该节点.

I tried adding in the gson jar from google, but I still see same error. Anyone else see this? I'm running one selenium server as hub, and then running a node against it with webdriver for ff or chrome, same issue.

com.google.gson.GsonBuilder.setLenient()Lcom/google/gson/GsonBuilder;

java.lang.NoSuchMethodError: com.google.gson.GsonBuilder.setLenient()Lcom/google/gson/GsonBuilder;
at org.openqa.selenium.json.Json.(Json.java:47)
at org.openqa.selenium.logging.profiler.HttpProfilerLogEntry.constructMessage(HttpProfilerLogEntry.java:37)
at org.openqa.selenium.logging.profiler.HttpProfilerLogEntry.(HttpProfilerLogEntry.java:29)
at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:135)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:545)
at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:209)
at org.openqa.selenium.remote.RemoteWebDriver.(RemoteWebDriver.java:132)
at oracle.ojet.automation.test.selenium.WebDriverManager._buildRemoteWebDriver(WebDriverManager.java:573)

推荐答案

此错误消息...

java.lang.NoSuchMethodError: com.google.gson.GsonBuilder.setLenient()Lcom/google/gson/GsonBuilder;

...表示 JVM 无法找到方法 setLenient()Lcom/google/gson/GsonBuilder .

...implies that the JVM was unable to find the method setLenient()Lcom/google/gson/GsonBuilder.

发行说明明确提到:

  • 迁移Selenium Grid可以减少GSON和Apache HttpClient向公共API的导出.

Selenium v​​3.12.0 发行说明还明确提到:

  • 从如何将JSON强制转换为Java类型中删除GSON.
  • 清理Selenium的JSON处理内部,包括弃用GSON从我们的API泄漏的地方.

最后, Selenium v​​3.13.0 发行说明明确提到:

  • 介绍了我们自己的JSON解析器和输出器,允许将GSON从我们的依赖项中删除.

解决方案

要摆脱警告和错误,请升级到 Selenium v​​3.14.0 ,其中 Release Notes 明确提到:

Solution

To get rid of the warning and errors upgrade to Selenium v3.14.0, where Release Notes clearly mentions:

  • 完全删除了GSON依赖项.现在,我们使用反射来尝试找到该类.

这篇关于java.lang.NoSuchMethodError:com.google.gson.GsonBuilder.setLenient()Lcom/google/gson/GsonBuilder;的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆