java Appium:例外:发生了无效的服务器示例异常:没有已安装的节点

ajsxfq5m  于 2023-03-28  发布在  Java
关注(0)|答案(4)|浏览(105)

我尝试以编程方式启动appium服务器,但遇到错误。如何解决这个问题?我已经安装了nodejs,安装了appium,并正确设置了环境变量。我使用的是maven appium java client 6.1.0和selenium 3.14.0。请帮助。十亿感谢您的帮助。
验证码:

try {
            File appDir = new File(System.getProperty("user.dir"));
            File app = new File(appDir, "..\\apk\\Flipkart.apk");

            // apk Capabilities
            DesiredCapabilities caps = new DesiredCapabilities();
            caps.setCapability("deviceName", "Sony Xperia Z2");
            caps.setCapability("BROWSER_NAME", "Android");
            caps.setCapability("platformVersion", "6.0");
            caps.setCapability(MobileCapabilityType.PLATFORM_NAME, Platform.ANDROID);
            //caps.setCapability("udid", "WUJ01N4RQ3"); // DeviceId from "adb devices" command
            caps.setCapability("platformName", "Android");
            caps.setCapability("app", app.getAbsolutePath());
            caps.setCapability("appPackage", "com.flipkart.android");
            caps.setCapability("appActivity","com.flipkart.android.SplashActivity");

            // Appium Capabilities
            caps.setCapability("skipUnlock","true");
            caps.setCapability("noReset","false");

            appiumBuilder = new AppiumServiceBuilder();
            appiumBuilder.withIPAddress("127.0.0.1");
            appiumBuilder.usingPort(47233);
            appiumBuilder.withCapabilities(caps);
            appiumBuilder.withStartUpTimeOut(3, TimeUnit.MINUTES);
            appiumBuilder.withLogFile(new File(System.getProperty("user.dir") + "\\log\\appium.log"));
            appiumBuilder.withArgument(GeneralServerFlag.SESSION_OVERRIDE);
            appiumBuilder.withArgument(GeneralServerFlag.LOG_LEVEL, "DEBUG");
            appiumBuilder.withArgument(GeneralServerFlag.ASYNC_TRACE, "true");

            appiumServer = AppiumDriverLocalService.buildService(appiumBuilder);
            appiumServer.start();
            //new URL("http://127.0.0.1:47233/wd/hub")
            driver = new AndroidDriver<MobileElement>(appiumServer, caps);
            driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);

        } catch (Exception ex) {
            LogManager.logger.log(Level.INFO, "Exception: " + ex.getMessage());
        }

错误日志:
信息:异常:发生了无效的服务器示例异常:没有安装节点!请通过NPM(https://www.npmjs.com/package/appium#using-node-js)安装节点或下载并安装Appium应用程序(http://appium.io/downloads.html)2019年1月03日下午3:52:12 com.peterwkc.testManager.AndroidManager tearDown信息:异常:null
编辑:我相信appium源代码无法检测到我安装的nodejs和appium。

wko9yo5t

wko9yo5t1#

尝试全局安装Appium。这为我解决了问题。
npm install -g appium

bq3bfh9z

bq3bfh9z2#

我也面临着同样的问题
1.尝试从命令行运行节点服务器示例,只需键入“node”并输入-- server should get started
1.打开另一个终端窗口,只是检查是否所有的细节都在做“ps eww”的进程运行良好
1.此处应显示正在运行的节点进程
1.只需在命令窗口中键入“Killallnode”,即可终止“节点服务器”
1.“节点”窗口将显示进程已终止。
时间的真相,运行您的脚本和所有应该得到顺利进行
我使用appium - 1.9.0 node - 11.9.0 npm version - 6.5.0 testscript - Java工具- Eclipse平台- iOS(10.14)完成了这一操作

wd2eg0qa

wd2eg0qa3#

我在使用nvm时遇到了同样的问题,尽管node已经安装在所有版本上。
最后,我决定使用uninstall nvm,它只支持node版本

14ifxucb

14ifxucb4#

·有时候,当使用Node Version Manager(例如用于安装和维护nodenpmnvm)时,您可能需要从www.example.com下载相同或更高版本的node/npm(以pkg形式)nodejs.org并相应地更新PATH。

相关问题