【问题标题】:How to run a java program with selenium jar through command line如何通过命令行使用 selenium jar 运行 java 程序
【发布时间】:2016-05-21 20:12:14
【问题描述】:

如何通过命令行运行带有 selenium jar 的 java 程序...

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;

public class HelloSelenium {

    public static void main(String[] args) {
        WebDriver driver;

        driver = new FirefoxDriver();
        System.out.println("Hello");
    }

}

我在通过 CLI 运行时遇到以下错误

java -cp ".;./jars/selenium-java-2.53.0.jar" HelloSelenium

Exception in thread "main" java.lang.NoClassDefFoundError: com/google/common/base/Function
    at HelloSelenium.main(HelloSelenium.java:11)
Caused by: java.lang.ClassNotFoundException: com.google.common.base.Function
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    ... 1 more

【问题讨论】:

    标签: java selenium selenium-webdriver


    【解决方案1】:

    如果您明确指定类路径,则默认情况下不包含当前目录。所以你应该这样做

    java -cp selenium-java-2.53.0.jar;. HelloSelenium
    

    注意多余的“;.”,例如添加 .到类路径。

    然而,这仍然不够,因为 selenium 本身有许多其他库作为依赖项(包含在您下载的 libs 文件夹中)。您还需要将它们添加到您的类路径中。

    对于您的简单示例,使用通配符最容易将它们全部添加。所以你应该使用:

    java -cp selenium-java-2.53.0.jar;libs/*;. HelloSelenium
    

    注意“libs/*”,它假定您位于 selenium 下载的根文件夹中。

    【讨论】:

      猜你喜欢
      • 2018-04-26
      • 2017-02-19
      • 1970-01-01
      • 2021-04-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多