【问题标题】:ant buildfile setting javac locationant buildfile 设置 javac 位置
【发布时间】:2011-06-19 09:52:37
【问题描述】:

我正在编辑一个旧项目的构建文件。当我将一些 jar 文件添加到使用 Java 1.6 的项目中时,它不会构建。它说

[javac] javac: invalid target release: 1.6

很明显,我需要告诉 ant 构建文件使用 javac 1.6。

我该怎么做?我的系统上安装了 JDK1.6,但默认的 javac 是 1.5。我不想更改默认的javac...我只想将这个项目中的javac位置设置为JDK1.6/bin/javac。 如何在 ant 构建文件的 XML 中执行此操作?

谢谢,
公里

【问题讨论】:

    标签: java xml ant build


    【解决方案1】:

    这是从javac task documentation中提取的

    <javac srcdir="" 
             destdir=""
             executable="path-to-java16-home/bin/javac" 
             fork="true"
             taskname="javac1.6" />
    

    【讨论】:

    • 我仍然收到“无效的目标版本:1.6”。也许我没有最新版本的 ant?
    • 但是这个我需要硬编码路径,如果我在服务器中编译该代码,那么我需要更改可执行路径。
    【解决方案2】:

    您可以创建一个包装脚本,在执行 ant 之前更改您的 JAVA_HOME

    例如build.sh

    export JAVA_HOME=/path/to/jdk1.6
    ant "$@"
    

    现在,当您调用 build.sh 时,它会为 javacjava 和任何其他命令使用 java6。

    IMO 这比摆弄build.xml(并分叉一个新的javac 进程)要好。

    【讨论】:

      猜你喜欢
      • 2012-06-02
      • 2010-12-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-04
      • 1970-01-01
      • 2014-06-23
      相关资源
      最近更新 更多