我有一个Ant版本可以在Windows上正常运行,但是当我把它带到Linux时似乎已经崩溃了。问题出在这里:
[xslt]
java.lang.ClassNotFoundException
:org.apache.tools.ant.taskdefs.optional.TraXLiaison
我已经尝试了以下内容:
xalan.jar
,xercesImpl.jar
和xml-apis.jar
放入$ANT_HOME/lib
目录。我正在使用EC2 Linux实例(基本的64位Amazon Linux AMI 2011.02.1 Beta(AMI Id:ami-8e1fece7)Amazon Linux AMI Base 2011.02.1,EBS启动,使用Amazon EC2 AMI的64位架构工具。)
令人沮丧的是,我已经让它工作了,然后当我把所有东西都装好并将它移到另一台机器上时,两台机器都停止工作了。 :(
答案 0 :(得分:9)
我从junitreport
任务中得到了同样的错误:
build.xml:251: Errors while applying transformations:
java.lang.ClassNotFoundException: org.apache.tools.ant.taskdefs.optional.TraXLiaison
我必须安装ant-trax
RPM包以提供此类并修复错误:
$ rpm -ql ant-trax | grep /usr/share/java/ant/ant-trax.jar
/usr/share/java/ant/ant-trax.jar
$ jar tf /usr/share/java/ant/ant-trax.jar | grep TraXLiaison
org/apache/tools/ant/taskdefs/optional/TraXLiaison.class
答案 1 :(得分:4)
假设您正在使用Ant 1.8.1,看起来您遇到了错误,请参阅= https://issues.apache.org/bugzilla/show_bug.cgi?id=49712
org.apache.tools.ant.taskdefs.optional.TraXLiaison类已移动 对于ant-nodeps.jar,也许你只需要把那个jar放在你的路径上。