java.lang.NullPointerException:条目中的空值:lastScrollData=null
Posted
技术标签:
【中文标题】java.lang.NullPointerException:条目中的空值:lastScrollData=null【英文标题】:java.lang.NullPointerException: null value in entry: lastScrollData=null 【发布时间】:2021-05-08 20:46:36 【问题描述】:我正在使用 Eclipse 编译我的代码,android studio 4.1.2 用于模拟器和 Appium Server。
我的代码:
DesiredCapabilities c=new DesiredCapabilities();
c.setCapability("deviceName", "emulator-5554");
c.setCapability("platformName", "Android");
c.setCapability("noReset", "True");
c.setCapability("appPackage", "com.ionicframework.rocassetassuranceapp290415");
c.setCapability("appActivity", "com.ionicframework.rocassetassuranceapp290415.CordovaApp");
AndroidDriver<AndroidElement> driver = new AndroidDriver<AndroidElement>(new URL("http://127.0.0.1:4723/wd/hub"),c);
Thread.sleep(5000);
MobileElement el1 = (MobileElement) driver.findElementByXPath("/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.webkit.WebView/android.webkit.WebView/android.view.View/android.view.View/android.view.View/android.view.View/android.view.View[1]/android.view.View[1]/android.view.View[2]/android.view.View[1]/android.widget.EditText");
el1.click();
我得到以下异常:
Exception in thread "main" java.lang.NullPointerException: null value in entry: lastScrollData=null
at com.google.common.collect.CollectPreconditions.checkEntryNotNull(CollectPreconditions.java:33)
at com.google.common.collect.ImmutableMap.entryOf(ImmutableMap.java:135)
at com.google.common.collect.ImmutableMap$Builder.put(ImmutableMap.java:206)
at com.google.common.collect.ImmutableMap$Builder.put(ImmutableMap.java:220)
at com.google.common.collect.ImmutableMap$Builder.putAll(ImmutableMap.java:232)
at io.appium.java_client.HasSessionDetails.getSessionDetails(HasSessionDetails.java:38)
at io.appium.java_client.HasSessionDetails.getSessionDetail(HasSessionDetails.java:42)
at io.appium.java_client.HasSessionDetails.getPlatformName(HasSessionDetails.java:46)
at io.appium.java_client.AppiumDriver.<init>(AppiumDriver.java:99)
at io.appium.java_client.AppiumDriver.<init>(AppiumDriver.java:111)
at io.appium.java_client.android.AndroidDriver.<init>(AndroidDriver.java:72)
at MobileApp.Test.main(Test.java:45)
【问题讨论】:
您提供的代码 sn-p 中的哪一行是第 45 行?如果您指出哪一条线是失败的线,那将有很大帮助。我假设它是您创建驱动程序实例的地方。你试过没有<AndroidElement>
吗?
【参考方案1】:
我在使用 appium v1.21.0 https://github.com/appium/appium-desktop/releases 和 io.appium.java-client 5.0.0-BETA9 时遇到了这个问题。
io.appium.java-client版本太旧,使用io.appium.java-client 6.0.0解决了这个问题https://github.com/appium/java-client/releases
而 org.seleniumhq.selenium.selenium-remote-driver 使用版本 3.141.59 https://github.com/SeleniumHQ/selenium/releases/tag/selenium-3.141.59
【讨论】:
本以为最新版都能解决,但没试过。以上是关于java.lang.NullPointerException:条目中的空值:lastScrollData=null的主要内容,如果未能解决你的问题,请参考以下文章
亲測,Eclipse报"An error has occurred,See error log for more details. java.lang.NullPointerExce