gpt4 book ai didi

java - 以编程方式启动 Appium 服务失败

转载 作者:行者123 更新时间:2023-11-30 02:10:46 28 4
gpt4 key购买 nike

我有一个大约九个月前创建的 Appium 测试项目,并且运行良好。从那时起,我尝试再次处理该项目,并且该项目可以正常工作,但前提是我手动启动 Appium(使用桌面应用程序)。该项目检查服务器是否已在运行,如果没有,则使用以下服务逻辑启动它:

public class AppiumServer {

AppiumDriverLocalService service = null;

public void InitAppiumServer() {

System.out.println("Creating Appium Service . . .");
service = AppiumDriverLocalService.buildDefaultService();
System.out.println("Appium Service created. URL: '" + service.getUrl().toString() + "'");

}

public void startServer() {

System.out.println("Starting Appium Service . . .");
service.start();
System.out.println("Appium Service started.");

}

当 Appium 未手动启动时,结果输出如下:

Creating Appium Service . . . Appium Service created. URL: 'http://0.0.0.0:4723/wd/hub' Checking for Appium Service on port 4723 . . . No prior Appium Service detected. Starting Appium Service . . . io.appium.java_client.service.local.AppiumServerHasNotBeenStartedLocallyException: The local appium server has not been started. The given Node.js executable: C:\Program Files\nodejs\node.exe Arguments: [C:\Users\m1033792\AppData\Roaming\npm\node_modules\appium\build\lib\main.js, --port, 4723, --address, 0.0.0.0]

如果我打开命令提示符并手动运行该命令行,它也可以工作,只是不使用我一直在使用的标准方法,并且从研究中可以看出,大多数其他人都在使用。我似乎也不是唯一一个遇到这个问题的人,因为我看到它在网络上的很多地方发布,但没有任何回应。

我的nodejs版本是5.6.0Appium(通过 nvm 安装)是 1.8Java 是 1.8.0_144Maven 是 3.5.4

最佳答案

经过广泛的研究和反复试验,我更深入地研究了堆栈跟踪,并注意到它引用了:

com.google.common.util.concurrent.SimpleTimeLimiter.create(Ljava/util/concurrent/ExecutorService;)Lcom/google/common/util/concurrent/SimpleTimeLimiter

作为“不存在”进一步的研究表明其他服务(不一定是 Appium Server)也存在同样的问题,并且这与我的 guava 版本为 21.0 而不是 23.0 相关。

一旦我更新了 pom.xml 中的设置,项目就再次无错误运行。

这是我没有在我的问题中发布整个堆栈跟踪的责任。吸取的教训。

关于java - 以编程方式启动 Appium 服务失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50163248/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com