从ANT运行TestNG测试用例给DomSource无法处理?

时间:2013-03-08 09:15:31

标签: dom ant jar testng saxon

我有一个运行testNG testCase的ant任务。但是在运行时它显示的错误就像下面一个

 [testng] Error 
 [testng]   DOMSource cannot be processed: check that saxon8-dom.jar is on the classpath
 [testng] [GeneralXMLOutput] [Error] DOMSource cannot be processed: check that saxon8- dom.jar is on the classpath

我的lib文件夹有jdom-0.7.jar,saxon-8.7.jar,SaxonLiasion.jar,它与xml有关。这是一个jar文件依赖冲突吗?

如何解决此错误?

ANT TASK

 <target name="runTests" depends="compile">
    <testng classpath="${test.classpath}:${build.dir}">
        <xmlfileset dir="${basedir}" includes="testng.xml" />
    </testng>
</target>

我在其他一些类中使用过rt.jar的javax.xml.transform.Transformer api而且saxon也有Transformer Api。(Whethter会产生问题吗?)

此致

1 个答案:

答案 0 :(得分:1)

消息很清楚:检查saxon8-dom是否在类路径上。从你所说的,它不是。

但是Saxon 8.7无论如何都是古老版本,目前的版本是9.4。最近的版本包括主JAR文件中的DOM支持 - 它之前保持独立的原因是因为DOM API在JDK 1.4和JDK 1.5之间以不兼容的方式发生了变化,当Saxon放弃对JDK 1.4的支持时,这个问题就消失了。 / p>