用appium打开android模拟器时出现java.lang.ClassNotFoundException。

我试图在Eclipse中从Windows运行以下代码,发现标题中提到的错误。谁能给我点建议。

代码

package com.apanp.one;

import java.io.File;
import java.net.MalformedURLException;
import java.net.URL;    
import org.openqa.selenium.remote.DesiredCapabilities;    
import io.appium.java_client.android.AndroidDriver;
import io.appium.java_client.android.AndroidElement;
import io.appium.java_client.remote.MobileCapabilityType;

public class base {

    public static void main(String[] args) throws MalformedURLException {

        File  f = new File("src");
        File fs =new File(f,"original.apk");

        DesiredCapabilities cap = new DesiredCapabilities();
        cap.setCapability(MobileCapabilityType.DEVICE_NAME, "Shayan");
        cap.setCapability(MobileCapabilityType.APP, fs.getAbsolutePath());
        cap.setCapability(MobileCapabilityType.AUTOMATION_NAME, "uiautomator2");
        AndroidDriver<AndroidElement> driver = new AndroidDriver <> (new URL("http://127.0.0.1/wd/hub"), cap);    
    }   
}

错误。

Exception in thread "main" java.lang.NoClassDefFoundError: com/google/common/base/Function
   at java.base/java.lang.ClassLoader.defineClass1(Native Method)
   at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1017)
   at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:151)
   at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:821)
   at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(BuiltinClassLoader.java:719)
   at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:642)
   at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:600)
   at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
   at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
   at com.apanp.one.base.main(base.java:24)
Caused by: java.lang.ClassNotFoundException: com.google.common.base.Function
   at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:602)
   at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
   at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
   ... 10 more

AVDManager

Virtual Device Manage

配置:JDK JAVA_HOME:C:\Program Files\Java\jdk-14.0.1

  1. JDK JAVA_HOME:C:\Program Files\Java\jdk-14.0.1Java bin: C:\\Program Files\Java\jdk-14.0.1\bin

  2. ANDROID STUDIO下载。https:/developer.android.comstudio。ANDROID_HOME=C:Users/Shahid/AppData/Local/Android/SdkANDROID-TOOLS-PATH:C:Users/Shahid/AppData/Local/Android/Sdk/toolsANDROID-TOOLS-BIN PATH: C:Users/Shahid/AppData/Local/Android/Sdk/tools/binANDROID-PLATFORM-PATH:C:Users/Shahid/AppData/Local/Android/Sdk/platform-tools

  3. 在AVD MANAGER中创建安卓模拟器。

  4. 我们可以通过命令提示调用EMULATOR:C:Users/Shahid/AppData/Local/Android/SdkemulatorTHEN TYPE:emulator -avd Shayan。

  5. 安装node.js。https:/nodejs.orgendownload

  6. NODE_HOME:C:\\程序文件\nodejs

  7. NPM_HOME:C:\Program Files\nodejs\node_modules\npm\bin

  8. 安装APPIUM SERVER(通过命令提示符使用npm): npm install -g appium。

  9. APPIUM服务器的一些命令: -启动appium服务器:appium -关闭appium服务器:ctrl + C; YN-> y和ENTER -检查版本:appium –版本 -检查它在哪里:哪里appium

  10. 安装APPIUM JAVA客户端库。http:/appium.iodownloads.html。SELECT JAVA; SELECT JAR

  11. 下载ECLIPSE。https:/www.eclipse.orgdownloadsdownload.php?file=oomphepp2020-03Reclipse-inst-win64.exe

解决方案:

ClassNotFoundException 意味着你没有任何班级在你的 classpath 为解决这一问题 comgoogle通用基础功能 这意味着你缺少了这个类,它属于 番石榴 的依赖jar。如果你使用maven,请添加以下依赖关系

<dependency>
  <groupId>com.google.guava</groupId>
  <artifactId>guava</artifactId>
  <version>23.6-jre</version>

  <!-- or, for Android: -->
  <version>23.6-android</version>
</dependency>

对于java。

你可以下载jar文件,并将其保存在类的路径上。

给TA打赏
共{{data.count}}人
人已打赏
未分类

VS代码中红色矩形内的文字是什么意思?

2022-9-13 13:12:20

未分类

使用不寻常的参数改变ggplot中X Y标签的大小。

2022-9-13 13:23:36

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索