我们正在使用Ant的Junitreport来创建运行Junit的结果。代码是这样的:
<target name="report.html">
<junitreport todir="${test.reports}">
<fileset dir="${test.reports}">
<include name="TEST-*.xml" />
</fileset>
<report todir="${test.reports}" />
</junitreport>
</target>
问题是Java无法正常运行。我们第一次将Java升级到Java 7时它停止了工作!现在我将Java升级到Java 1.7.05并将其更改为64位版本而不是32位。它再次停止工作。我得到这样的转换错误:应用转换时的错误:转换期间的致命错误
两个问题:
答案 0 :(得分:1)
这看起来像ant 1.8.2及更低版本的问题。它似乎是导致这些问题的相同错误:
<junitreport> broken on JDK 7 when a SecurityManager is set
<xslt> with redirect broken on JDK 7 when a SecurityManager is set
在Eclipse和NetBeans中使用ant似乎存在问题。
<junitreport> broken inside IDE on JDK 7
Ant build fails in junitreport using Java 6u32 or later
尝试使用较新版本的ant,例如1.8.3甚至更好的1.8.4。
答案 1 :(得分:0)
它与Java版本无关。切换到新平台后,您的测试是否失败?
ant任务在xml上使用xslt处理。如果它有一些非常大的字符串出错,它可能会给出错误,就像你写的一样。
答案 2 :(得分:0)
更改java和Ant的版本.. 检查http://www.duncanjauncey.com/blog/archives/41