日期:2014-05-19  浏览次数:20740 次

求助:ant借助Retrotranslator将JDK1.5的字节码转换成JDK1.4出现Reference classpath not found
搞了两天了,从http://huajiang.iteye.com/blog/501086 看的转换文章,用ANT通过Retrotranslator
转换,结果怎么也转换不了,
下面是出错信息
BUILD FAILED
D:\JDK1.5 convert 1.4\Retrotranslator\Retrotranslator\build.xml:18: Reference cl
asspath not found.
下面是build.xml

<?xml version="1.0" encoding="UTF-8"?>
<project name="Retrotranslator" default="translate">

<property file="build-dist.properties"/> 

<path id="compile.classpath">
<fileset dir="${Retrotranslator.dir}">
<include name="**/*.jar"/>
</fileset>
</path>

<!-- 用 Retrotranslator 把上面编译的Class文件转换成JVM1.4的Class文件-->
 <target name="translate">
   <taskdef name="retrotranslator"
      classname="net.sf.retrotranslator.transformer.RetrotranslatorTask" />
    <retrotranslator
      destdir="d:\JDK1.5 convert 1.4\Retrotranslator\Retrotranslator\dist" verify="true"
      srcdir="e:\workspace\fundacc\fundacc\WEB-INF\classes">
      <!-- 项目中用到的包或类 -->   
      <classpath refid="classpath"/>

      <!-- 1.4JDK的运行时包 -->
      <classpath location="e:/Program Files/Java/j2sdk1.4.2/jre/lib/rt.jar"/>
    </retrotranslator>
</target>

</project>


------最佳解决方案--------------------
<path id="classpath">        
        <pathelement location="lib/backport-util-concurrent-3.1.jar" />
        <pathelement location="lib/retrotranslator-runtime-1.2.9.jar" />
        <pathelement location="lib/retrotranslator-transformer-1.2.9.jar" />       
    </path>
------其他解决方案--------------------
ant的就是这样,操作繁琐,不如用maven。参考地址:http://blog.csdn.net/magic_wz/article/details/7449642
------其他解决方案--------------------
各位大侠帮帮忙啊