Fork me on GitHub

为ant指定编译版本

 

用Eclipse的ant折腾了一天也没搞清楚为什么同样的设置ant出的class版本却不一样。后来下载个ant工具在命令行执行通过。

从网上抄得指定编译版本的方法如下:

ant 运行时,必需依赖jdk6.0,而是用ant编译java文件时,却需要是用jdk1.4或者1.5。那如何指定ant编译版本呢?

最近发现了两种解决方案:

1、为 javac 任务指定target属性,取值为:1.3、1.4、1.5 即自己需要编译源码的版本,部分源码:

<target name="main2">   
  <delete dir="${class.dir}"/>   
  <mkdir dir="${class.dir}"/>   
  <javac target="1.3" srcdir="${src.dir}" destdir="${class.dir}">   
    <classpath refid="classpath" />   
  </javac>   
</target>  

 

2、为javac 任务指定fork和executable,是用指定编译器编译,这个方法更灵活,您甚至可以指定非sun公司的java编译器

<target name="main3">   
  <delete dir="${class.dir}"/>   
  <mkdir dir="${class.dir}"/>   
  <javac fork="true" executable="D:\Java\jdk1.5.0_10\bin\javac" srcdir="${src.dir}" destdir="${class.dir}">   
    <classpath refid="classpath" />   
  </javac>   
</target>  

 

posted @ 2013-08-22 18:29  _落雨  阅读(732)  评论(0编辑  收藏  举报