有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

为什么ANT不为构建使用Eclipse工作区默认JRE

我正在尝试用ANT构建脚本编译我的项目。 当我更改Eclipse工作区的默认JRE时,比如说更改为JDK1。6.0_27 32位ANT仍然使用JRE 1.7.0 64位(这是系统默认值)

通过设置“External Tools Configuration”,选择ANT build file并在“JRE”选项卡中选择相关java,可以将ANT build file设置为使用不同的java版本,但这很奇怪,因为在同一位置有一个选项可以使用“在与工作区相同的JRE中运行”,这对我不适用(运行EclipseIndigo3.7)

当您有一个带有一个ANT脚本的一个项目时,这可能不是问题,但我有一个带有7个构建文件的7个项目,我需要制作两个不同的版本:一个带有Java 1.6 32位,一个Java 1.7 64位。每次手动选择所需的设置(我几乎每天都在构建版本)都会成为真正的“麻烦”


共 (1) 个答案

  1. # 1 楼答案

    好的,我自己找到了解决办法。 我创建了一个新的ANT构建文件,并从中调用其他ANT文件,如下所示:

    <project name="build-all" default="build.all">
    
    <target name="proj1">
        <ant antfile="build-proj1.xml" target="build" inheritAll="false"/>
    </target>
    
    <target name="proj2">
        <ant antfile="build-proj2.xml" target="build" inheritAll="false"/>
    </target>
    
    <target name="proj3">
        <ant antfile="build-proj3.xml" target="build" inheritAll="false"/>
    </target>
    
    <target name="build.all" depends="proj1,proj2,proj3"/>
    

    现在我可以转到Eclipse,将这个顶级ANT文件的目标更改为所需的JRE版本,所有子构建文件都使用父级设置执行