2012-06-06 68 views
0

我現在正在努力與Ant,試圖使它驅動我的WebDriver測試。到目前爲止,我有以下的build.xml(從某處複製招搖)螞蟻jUnit WebDriver - NoClassDefFoundError

<property name="src" value="./src" /> 
<property name="lib" value="d:/apache-ant-1.8.4/lib/" /> 
<property name="bin" value="./bin/" /> 
<property name="report" value="./report" /> 
<path id="test.classpath"> 
    <pathelement location="${bin}" /> 
    <fileset dir="${lib}"> 
     <include name="**/*.jar" /> 
    </fileset> 
</path> 

<target name="init"> 
    <delete dir="${bin}" /> 
    <mkdir dir="${bin}" /> 
</target> 

<target name="compile" depends="init"> 
    <javac source="1.6" srcdir="${src}" fork="true" destdir="${bin}" > 
     <classpath> 
      <pathelement path="${bin}"> 
      </pathelement> 
      <fileset dir="${lib}"> 
       <include name="**/*.jar" /> 
      </fileset> 
     </classpath> 
    </javac> 
</target> 

<target name="exec" depends="compile"> 
    <delete dir="${report}" /> 
    <mkdir dir="${report}" /> 
     <mkdir dir="${report}/xml" /> 
    <junit printsummary="yes" haltonfailure="no"> 
     <classpath> 
      <pathelement location="${bin}" /> 
      <fileset dir="${lib}"> 
       <include name="**/*.jar" /> 
      </fileset> 
     </classpath> 

     <test name="com.yourcompany.selenium.ccloop.tb6NoInterested" haltonfailure="no" todir="${report}/xml" outfile="TEST-result"> 
      <formatter type="xml" /> 
     </test> 
    </junit> 
    <junitreport todir="${report}"> 
     <fileset dir="${report}/xml"> 
      <include name="TEST*.xml" /> 
     </fileset> 
     <report format="frames" todir="${report}/html" /> 
    </junitreport> 
</target> 

現在,當我運行螞蟻的一切都將建立罰款,但測試不運行,我得到了NoClassDefFoundError。

org/apache/http/HttpHost

java.lang.NoClassDefFoundError: org/apache/http/HttpHost at org.openqa.selenium.chrome.ChromeDriver.(ChromeDriver.java:144) at org.openqa.selenium.chrome.ChromeDriver.(ChromeDriver.java:86) at com.yourcompany.selenium.ccloop.tb6NoInterested.setUp(Unknown Source) Caused by: java.lang.ClassNotFoundException: org.apache.http.HttpHost at java.net.URLClassLoader$1.run(URLClassLoader.java:202) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:190) at java.lang.ClassLoader.loadClass(ClassLoader.java:306) at java.lang.ClassLoader.loadClass(ClassLoader.java:247) at java.lang.ClassLoader.loadClass(ClassLoader.java:247) N/A

java.lang.NullPointerException at com.yourcompany.selenium.ccloop.tb6NoInterested.tearDown(Unknown Source)

包名稱com.yourcompany.selenium.ccloop 測試名tb6NoInterested

我有螞蟻lib文件夾(在hamcrest,JUnit中,硒的)

什麼時所有的罐子我做錯了?

回答

1

httpcore from apache似乎不在類路徑中。

org/apache/http/HttpHost是該庫中的一個類。

我通常使用findjar找到哪些jar包含類,當我得到一個令人驚訝的NoClassDefFoundError。

+0

謝謝! (和一些更多的失蹤罐子)解決了這個問題 – tom