Class CompilerAdapterFactory

java.lang.Object
org.apache.tools.ant.taskdefs.compilers.CompilerAdapterFactory

public final class CompilerAdapterFactory
extends java.lang.Object
Creates the necessary compiler adapter, given basic criteria.
Since:
Ant 1.3
  • Method Summary

    Modifier and Type Method Description
    static CompilerAdapter getCompiler​(java.lang.String compilerType, Task task)
    Based on the parameter passed in, this method creates the necessary factory desired.
    static CompilerAdapter getCompiler​(java.lang.String compilerType, Task task, Path classpath)
    Based on the parameter passed in, this method creates the necessary factory desired.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Method Details

    • getCompiler

      public static CompilerAdapter getCompiler​(java.lang.String compilerType, Task task) throws BuildException
      Based on the parameter passed in, this method creates the necessary factory desired. The current mapping for compiler names are as follows:
      • jikes = jikes compiler
      • classic, javac1.1, javac1.2 = the standard compiler from JDK 1.1/1.2
      • modern, javac1.3, javac1.4, javac1.5 = the compiler of JDK 1.3+
      • jvc, microsoft = the command line compiler from Microsoft's SDK for Java / Visual J++
      • kjc = the kopi compiler
      • gcj = the gcj compiler from gcc
      • sj, symantec = the Symantec Java compiler
      • a fully qualified classname = the name of a compiler adapter
      Parameters:
      compilerType - either the name of the desired compiler, or the full classname of the compiler's adapter.
      task - a task to log through.
      Returns:
      the compiler adapter
      Throws:
      BuildException - if the compiler type could not be resolved into a compiler adapter.
    • getCompiler

      public static CompilerAdapter getCompiler​(java.lang.String compilerType, Task task, Path classpath) throws BuildException
      Based on the parameter passed in, this method creates the necessary factory desired. The current mapping for compiler names are as follows:
      • jikes = jikes compiler
      • classic, javac1.1, javac1.2 = the standard compiler from JDK 1.1/1.2
      • modern, javac1.3, javac1.4, javac1.5 = the compiler of JDK 1.3+
      • jvc, microsoft = the command line compiler from Microsoft's SDK for Java / Visual J++
      • kjc = the kopi compiler
      • gcj = the gcj compiler from gcc
      • sj, symantec = the Symantec Java compiler
      • a fully qualified classname = the name of a compiler adapter
      Parameters:
      compilerType - either the name of the desired compiler, or the full classname of the compiler's adapter.
      task - a task to log through.
      classpath - the classpath to use when looking up an adapter class
      Returns:
      the compiler adapter
      Throws:
      BuildException - if the compiler type could not be resolved into a compiler adapter.
      Since:
      Ant 1.8.0