如何解决NoSuchMethodError和appiumDriver错误

时间:2017-07-25 12:06:36

标签: android selenium appium nosuchmethoderror

 package demo;
import java.net.MalformedURLException;
import java.net.URL;
import org.openqa.selenium.By;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.CapabilityType;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;
import io.appium.java_client.android.AndroidDriver;

  public class Test {

 RemoteWebDriver driver;
 public static void main(String[] args)throws MalformedURLException, InterruptedException{ 
    DesiredCapabilities capabilities = new DesiredCapabilities();
    capabilities.setCapability("deviceName", "Samsung S4");
    capabilities.setCapability("platformName", "Android");
    capabilities.setCapability(CapabilityType.BROWSER_NAME, "Chrome");
    capabilities.setCapability("platformVersion", "5.0.1");
    RemoteWebDriver driver = new AndroidDriver(new 
    URL("http://127.0.0.1:4723/wd/hub"), capabilities);
    driver.get("http://www.google.com");
    WebElement keyword = driver.findElementByName("q");
    keyword.sendKeys("appium");
    driver.findElement(By.id("btnK")).click();
    Thread.sleep(5000);

} }

错误是

  

线程中的异常" main" java.lang.NoSuchMethodError:org.openqa.selenium.remote.ErrorHandler。(Lorg / openqa / selenium / remote / ErrorCodes; Z)V       在io.appium.java_client.AppiumDriver。(AppiumDriver.java:46)       在demo.Test.main(Test.java:31)

我添加了所有必需的Jars文件。当我运行代码时,appium服务器上没有任何反应。任何帮助!

3 个答案:

答案 0 :(得分:0)

NoSuchMethodError - 当您尝试使用反射访问运行时不可用的方法时,通常抛出此异常。

此错误可能是由于库(jars)版本不匹配导致某些方法被删除。

答案 1 :(得分:0)

你能否重新检查代码一次“capabilities.setCapability(CapabilityType.BROWSER_NAME,”Chrome“);”

以及与“import io.appium.java_client.android.AndroidDriver;”相关的jar ..“

尝试导入最新的jar并再次运行。

  capabilities.setCapability("platformName", "Android");
capabilities.setCapability("appPackage", "com.android.browser");
capabilities.setCapability("appActivity","com.android.browser.BrowserActivity");
capabilities.setCapability("platformVersion", "5.1");

答案 2 :(得分:0)

将Java客户端jar更改为版本5.0.4解决了我的问题。您可以从给定的链接下载它:

https://mvnrepository.com/artifact/io.appium/java-client

此外,请确保您的APK必须存在于src文件夹路径中。

C:\ Users \ abc \ workspace \ AppiumFirst \ src