我在同一台机器上有几个java项目,它们确实需要使用不同的java编译器构建,一个使用java 1.6,另一个使用java 1.7。 (不,使用更高版本的java构建它们并指定需要较低版本的项目的源和目标是不够的 - 它们之间的差异会导致测试失败。)
我的同事没有这个问题 - 他们只有一个需要1.6的项目。我想提供一些配置,使我能够覆盖java编译器,而无需添加环境变量。我想象这样的事情:
<javac executable='${java.executable.path}' srcdir='${src.dir}' destdir='${dest.dir.classes}' source='1.6' target='1.6' fork='true' />
其中${java.executable.path}
在文件前面定义为:
<condition property="java.executable.path" value="${env.PROJ_JAVA_HOME}" else="${DEFAULT_JAVAC}">
<isset property="env.PROJ_JAVA_HOME" />
</condition>
除了......我找不到${DEFAULT_JAVAC}
。有没有更好的方法来做到这一点,我错过了?或者蚂蚁不是为这样的东西而建的吗?
答案 0 :(得分:0)
你可以默认使用路径上的任何javac。
可能set an ant property by executing a shell script,因此您需要执行which javac