Author: jlboudart
Date: Fri Oct 4 21:02:14 2013
New Revision: 1529300
URL: http://svn.apache.org/r1529300
Log:
Add support to specify alternative compiler
Modified:
ant/easyant/plugins/trunk/compile-java/src/main/resources/compile-java.ant
ant/easyant/plugins/trunk/compile-java/src/test/antunit/compile-java-test.xml
Modified:
ant/easyant/plugins/trunk/compile-java/src/main/resources/compile-java.ant
URL:
http://svn.apache.org/viewvc/ant/easyant/plugins/trunk/compile-java/src/main/resources/compile-java.ant?rev=1529300&r1=1529299&r2=1529300&view=diff
==============================================================================
--- ant/easyant/plugins/trunk/compile-java/src/main/resources/compile-java.ant
(original)
+++ ant/easyant/plugins/trunk/compile-java/src/main/resources/compile-java.ant
Fri Oct 4 21:02:14 2013
@@ -29,18 +29,23 @@
description="Specify a VM version for Generated class files (e.g., 1.1
or 1.2)." />
<ea:parameter property="compile.java.source.version"
default="${ant.java.version}"
description="Specify a value of the -source command-line switch; will
be ignored by all implementations prior to javac1.4 (or modern when Ant is not
running in a 1.3 VM) and jikes" />
+ <ea:parameter property="compile.java.compiler" description="The
compiler implementation to use" default="modern"/>
<available file="${src.main.java}" property="has.src.main.java" />
<property name="main.sources" value="${src.main.java}"/>
<property name="main.sources.includes"
value="${compile.java.includes.pattern}"/>
<property name="main.sources.excludes"
value="${compile.java.excludes.pattern}"/>
+
+ <path id="java.compiler.classpath" description="A PATH like structure
holding the classpath to use when loading the compiler implementation if a
custom class has been specified. Doesn't have any effect when using one of the
built-in compilers."/>
<target name="compile-java:compile"
depends="abstract-compile:compile-ready" if="has.src.main.java"
extensionOf="abstract-compile:compile">
<mkdir dir="${target.main.classes}" />
<javac srcdir="${src.main.java}" destdir="${target.main.classes}"
debug="${javac.debug.mode}" source="${compile.java.source.version}"
target="${compile.java.target.version}"
classpathref="compile.main.classpath"
includes="${compile.java.includes.pattern}"
- excludes="${compile.java.excludes.pattern}" includeantruntime="no">
+ excludes="${compile.java.excludes.pattern}" includeantruntime="no"
+ compiler="${compile.java.compiler}">
+ <compilerclasspath refid="java.compiler.classpath"/>
</javac>
</target>
</project>
\ No newline at end of file
Modified:
ant/easyant/plugins/trunk/compile-java/src/test/antunit/compile-java-test.xml
URL:
http://svn.apache.org/viewvc/ant/easyant/plugins/trunk/compile-java/src/test/antunit/compile-java-test.xml?rev=1529300&r1=1529299&r2=1529300&view=diff
==============================================================================
---
ant/easyant/plugins/trunk/compile-java/src/test/antunit/compile-java-test.xml
(original)
+++
ant/easyant/plugins/trunk/compile-java/src/test/antunit/compile-java-test.xml
Fri Oct 4 21:02:14 2013
@@ -42,11 +42,14 @@
<au:assertPropertyEquals name="compile.java.excludes.pattern" value=""
/>
<au:assertPropertyEquals name="compile.java.target.version"
value="${ant.java.version}" />
<au:assertPropertyEquals name="compile.java.source.version"
value="${ant.java.version}" />
- <au:assertPropertyEquals name="has.src.main.java" value="true" />
+ <au:assertPropertyEquals name="compile.java.compiler" value="modern"/>
+
+ <au:assertPropertyEquals name="has.src.main.java" value="true" />
<au:assertPropertyEquals name="main.sources"
value="${basedir}/src/main/java"/>
<au:assertPropertyEquals name="main.sources.includes"
value="**/*.java"/>
<au:assertPropertyEquals name="main.sources.excludes" value=""/>
+ <au:assertReferenceSet refid="java.compiler.classpath"/>
</target>
<target name="test-compile-java:compile" depends="compile-java:compile">