[英]java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkState
[英]java.lang.NoSuchMethodError: com.google.common.base.Preconditions
我收到这个错误
java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkState(ZLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
at org.openqa.selenium.remote.service.DriverService.findExecutable(DriverService.java:124)
at org.openqa.selenium.chrome.ChromeDriverService.access$000(ChromeDriverService.java:32)
at org.openqa.selenium.chrome.ChromeDriverService$Builder.findDefaultExecutable(ChromeDriverService.java:137)
at org.openqa.selenium.remote.service.DriverService$Builder.build(DriverService.java:339)
at org.openqa.selenium.chrome.ChromeDriverService.createDefaultService(ChromeDriverService.java:88)
at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:123)
我建立了一个用于社交媒体的机器人,因此我使用Selenium库,并且该机器人在Java应用程序上运行良好,但是当我将代码复制到Web应用程序时,当我运行servlet时,我的Servlet正在监听我的Android应用程序,并且Servlet调用使用Selenium的机器人的代码,当涉及到该行时,它将引发该错误
System.setProperty("webdriver.chrome.driver", "C:\\Users\\manue\\OneDrive\\Escritorio\\chromedriver.exe");
driver = new ChromeDriver();
我已经读到它可能是因为我拥有的guava版本,但是我的guava版本已更新,我不知道为什么我会收到此错误。
在我的maven pom.xml中,我有这样的依赖项
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-web-api</artifactId>
<version>7.0</version>
<scope>provided</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java -->
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.10.0</version>
</dependency>
这里是我的项目结构的屏幕截图。 我的项目的屏幕截图
当我从lib路径中删除Google Collections jar时,我找到了一种可能相关的错误消息的解决方案。
(资源)
看起来像类路径问题。 您在我们的类路径中有什么版本的guava-X.jar? (最有可能在webapp的WEB-INF / lib中)。 可能的解决方案是在pom.xml中显式声明最新版本的guava。 对于3.10.0的硒,您需要:
<!-- https://mvnrepository.com/artifact/com.google.guava/guava -->
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>24.0-jre</version>
</dependency>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.