selenium-server grid2启动问题。 NoClassDefFoundError异常

时间:2011-08-02 10:17:12

标签: selenium-grid

  

java -jar selenium-server-2.1.0.jar -role rc -hub   http://localhost:4444/grid/register -port 5555

2.8.2011 12:14:12 org.openqa.grid.selenium.GridLauncher main
INFO: Launching a selenium grid node
Exception in thread "main" java.lang.NoClassDefFoundError: org/json/JSONExceptio
n
        at org.openqa.grid.selenium.GridLauncher.main(GridLauncher.java:57)
Caused by: java.lang.ClassNotFoundException: org.json.JSONException
        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

4 个答案:

答案 0 :(得分:3)

您需要使用selenium-server-standalone-2.X.Y.jar才能获得所有必需的库。 selenium-server-2.X.Y.jar仅在您打算管理自己的类路径时才会使用。

答案 1 :(得分:1)

我有同样的问题。到目前为止我尝试过的事情:

  1. 在我的类路径环境变量
  2. 中包含Selenium-2.3.0 / libs文件夹
  3. 包含Selenium-2.3.0 / libs文件夹,命令行覆盖“-classpath / path / libs / *”
  4. 将json.jar(在org / json文件夹中使用JSONException.class)添加到我的jre的ext文件夹中并确保它在类路径中
  5. 编写我自己的MyTest.java类(下面的代码),编译它并运行它没有问题
  6.     import org.json.JSONException;
    
        public class MyTest {
          public static void main(String[] args) {
            new JSONException("message");
          }
        }
    

    那么下一步是什么?

答案 2 :(得分:0)

正如nirvdrum所提到的,除非您想管理类路径,否则我建议您使用selenium standalone server JAR文件。

用于集线器使用:

java -jar selenium-server-standalone-2.3.0.jar -role hub

对于同一台机器上的节点:

java -jar selnium-server-standalone-2.3.0.jar -role remotecontrol -hub http://localhost:4444/grid/register -port [XXXX](4444以外的其他内容)

这只是为了让您的网格设置。为了使用通过网格运行测试,您需要使用引用您的集线器的RemoteWebDriver实例。例如:

WebDriver driver = new RemoteWebDriver( new URL("http://localhost:4444/wd/hub"), DesiredCapabilities.firefox() );

答案 3 :(得分:0)

对于处理硒的人来说,他们是硒的新手。 从http://docs.seleniumhq.org/download/下载最新的Selenium Standalone Server jar文件     右键单击项目 - >构建路径 - >配置构建路径..     在Java Build Path部分中,转到Libraries选项卡,然后单击" Add External Jars"按键     现在,添加上面下载的jar文件。单击Apply,然后单击OK。

这解决了我的问题。