2013-07-18 45 views
0

我試圖在我的Testng框架中使用ant包含xslt報告。當我嘗試在build.xml中執行MakeReport目標時,出現一些與類路徑相關的錯誤,如Reference test.classpath not found。以下是生成xslt的目標代碼。ecllipse build.xml中的目標xslt錯誤

<target name="makexsltreport"> 
    <delete dir="${basedir}/testng-xslt"> 
    </delete> 
    <mkdir dir="${basedir}/testng-xslt"> 
    </mkdir> 
    <xslt in="${ng.result}/testng-results.xml" style="src/xslt/testng-results.xsl" out="${ws.home}/testng-xslt/index.html" 
      classpathref="test.c" processor="SaxonLiaison"> 
<!-- THE ERROR IS IN ABOVE LINE --> 
     <param expression="${basedir}/testng-xslt/" name="testNgXslt.outputDir" /> 
     <param expression="true" name="testNgXslt.sortTestCaseLinks" /> 
     <param expression="FAIL,SKIP,PASS,CONF,BY_CLASS" name="testNgXslt.testDetailsFilter" /> 
     <param expression="true" name="testNgXslt.showRuntimeTotals" /> 
     <classpath refid="classpath"> 
     </classpath> 
    </xslt> 
</target> 

請幫助解決這個問題。我嘗試了一切。

回答

0

參考test.classpath沒有找到

意味着螞蟻沒能發現你已經跟classpathref引用test.classpath路徑。你如何定義這條道路?如果<path id="test.classpath">位於目標範圍內,那麼您需要使目標依賴於(直接或間接)定義路徑的目標。

而且你不應該使用一個classpathref屬性一個<classpath>元素 - 使用一個或另一個。

+0

我所提供的路徑ID以外目標像這樣'<路徑ID = 「test.c的」> <文件集DIR = 「$ {ws.jars}」 包括= 「*。罐子」/> \t '你能告訴我如何定義一個類路徑嗎?我已經把它作爲test.c。我應該在那裏給我什麼?它是任何字符串? – mac

+0

@mac刪除'xslt'任務中的''元素,並更改'classpathref'屬性以匹配您定義的''的'id'(ie'classpathref =「test.c」') 。 –