java - 在命令提示符下运行 java Selenium

标签 java selenium

我有这个代码:

import org.openqa.selenium.firefox.FirefoxDriver;

public class Test {
    public static void main(String[] args) {
        try{
            FirefoxDriver driver = new FirefoxDriver();
            driver.get("http:\\www.yahoo.com");
        } catch(Exception e){
            e.printStackTrace();
        }
    }
}

我想在cmd中运行它。因此,我在 .bat 文件中调用以下命令。

javac -classpath "C:\selenium-2.42.2\selenium-server-standalone-2.42.2.jar;C:\selenium-2.42.2\selenium-java-2.42.2.jar;C:\selenium-2.42.2\selenium-firefox-driver-2.42.2.jar" Test.java
java Test

返回以下错误:

C:\selenium-2.42.2>javac -classpath "C:\selenium-2.42.2\selenium-server-standalo
ne-2.42.2.jar;C:\selenium-2.42.2\selenium-java-2.42.2.jar;C:\selenium-2.42.2\sel
enium-firefox-driver-2.42.2.jar" Test.java

C:\selenium-2.42.2>java Test
Exception in thread "main" java.lang.NoClassDefFoundError: org/openqa/selenium/f
irefox/FirefoxDriver
        at Test.main(Test.java:6)
Caused by: java.lang.ClassNotFoundException: org.openqa.selenium.firefox.Firefox
Driver
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        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

此外,以下信息也会有所帮助:

  1. java -version 得到:

    java版本“1.8.0_05” Java(TM) SE 运行时环境(版本 1.8.0_05-b13) Java HotSpot(TM) 64 位服务器 VM(内部版本 25.5-b02,混合模式)

  2. C:\Program Files (x86)\Mozilla Firefox>firefox.exe -v |更多的 Mozilla Firefox 30.0

也许这篇文章会被标记为重复,但我遵循了其他人的建议,但没有成功。您能透露一下情况吗?

Here是我使用的 jar 文件。

谢谢!

PS:Win7 64位

最佳答案

您的第一个命令javac构建了类,但没有将依赖项嵌入到最终的jar文件中,这就是错误告诉您的内容:java.lang.NoClassDefFoundError。运行该类时,您仍然需要提供相同的依赖项。

javac -cp "C:\selenium-2.42.2\selenium-java-2.42.2.jar" Test.java
java -cp "C:\selenium-2.42.2\selenium-java-2.42.2.jar" Test

selenium-java.jar 应该足以满足您的情况。看看这里的图形 http://www.seleniumhq.org/download/maven.jsp查看不同的 Selenium jar 如何相互包含。

我不相信您可以单独使用 javac 将依赖项嵌入到最终的 .jar 中。您将需要其他工具。

关于java - 在命令提示符下运行 java Selenium,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24535528/

相关文章:

java - 如何在不使用 JFreeChart 的情况下创建图表?

python - 如何向自动生成的 Python Selenium 脚本添加参数

css - selenium 动态值 - 用于文本框

javascript - 如何处理 webelement is - not attribute id(!) in javascript from selenium-python?

java - 将 UTC 时间戳转换为任意时区

java - 我的应用程序因 firebaseAuth.getUid() 的空指针异常而崩溃

java - Spring文件以混合形式上传

ruby-on-rails - 我可以使用 Selenium IDE 生成 Cucumber/Capybara 步骤吗?

java - 在java中为xpath仅选择某些tr标签

java - 使用 spring 部署应用程序后如何启动 ActiveMQ messageListener?