git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@275868 13f79535-47bb-0310-9956-ffa450edef68master
| @@ -52,9 +52,10 @@ attribute are:</a></p> | |||||
| <li><code>classic</code> (the standard compiler of JDK 1.1/1.2) – | <li><code>classic</code> (the standard compiler of JDK 1.1/1.2) – | ||||
| <code>javac1.1</code> and | <code>javac1.1</code> and | ||||
| <code>javac1.2</code> can be used as aliases.</li> | <code>javac1.2</code> can be used as aliases.</li> | ||||
| <li><code>modern</code> (the standard compiler of JDK 1.3/1.4) – | |||||
| <li><code>modern</code> (the standard compiler of JDK 1.3/1.4/1.5) – | |||||
| <code>javac1.3</code> and | <code>javac1.3</code> and | ||||
| <code>javac1.4</code> can be used as aliases.</li> | |||||
| <code>javac1.4</code> and | |||||
| <code>javac1.5</code> can be used as aliases.</li> | |||||
| <li><code>jikes</code> (the <a | <li><code>jikes</code> (the <a | ||||
| href="http://oss.software.ibm.com/developerworks/opensource/jikes/" target="_top">Jikes</a> | href="http://oss.software.ibm.com/developerworks/opensource/jikes/" target="_top">Jikes</a> | ||||
| compiler).</li> | compiler).</li> | ||||
| @@ -235,7 +236,7 @@ invoking the compiler.</p> | |||||
| <td valign="top">Generate class files for specific VM version | <td valign="top">Generate class files for specific VM version | ||||
| (e.g., <code>1.1</code> or <code>1.2</code>). <b>Note that the | (e.g., <code>1.1</code> or <code>1.2</code>). <b>Note that the | ||||
| default value depends on the JVM that is running Ant. In | default value depends on the JVM that is running Ant. In | ||||
| particular, if you use JDK 1.4 the generated classes will not be | |||||
| particular, if you use JDK 1.4+ the generated classes will not be | |||||
| usable for a 1.1 Java VM unless you explicitly set this attribute | usable for a 1.1 Java VM unless you explicitly set this attribute | ||||
| to the value 1.1 (which is the default value for JDK 1.1 to | to the value 1.1 (which is the default value for JDK 1.1 to | ||||
| 1.3).</b></td> | 1.3).</b></td> | ||||
| @@ -310,12 +311,12 @@ invoking the compiler.</p> | |||||
| <td valign="top">source</td> | <td valign="top">source</td> | ||||
| <td valign="top">Value of the <code>-source</code> command-line | <td valign="top">Value of the <code>-source</code> command-line | ||||
| switch; will be ignored by all implementations except | |||||
| switch; will be ignored by all implementations prior to | |||||
| <code>javac1.4</code> (or <code>modern</code> when Ant is not | <code>javac1.4</code> (or <code>modern</code> when Ant is not | ||||
| running in a 1.3 VM) and <code>jikes</code>.<br> If you use this | running in a 1.3 VM) and <code>jikes</code>.<br> If you use this | ||||
| attribute together with <code>jikes</code>, you must make sure | attribute together with <code>jikes</code>, you must make sure | ||||
| that your version of jikes supports the <code>-source</code> | that your version of jikes supports the <code>-source</code> | ||||
| switch.<br> Legal values are <code>1.3</code> and <code>1.4</code> | |||||
| switch.<br> Legal values are <code>1.3</code>, <code>1.4</code> and <code>1.5</code> | |||||
| – by default, no <code>-source</code> argument will be used | – by default, no <code>-source</code> argument will be used | ||||
| at all.</td> | at all.</td> | ||||
| @@ -594,7 +595,7 @@ while all others are <code>false</code>.</p> | |||||
| <code><javac></code>.</p> | <code><javac></code>.</p> | ||||
| <hr> | <hr> | ||||
| <p align="center">Copyright © 2000-2003 Apache Software Foundation. | |||||
| <p align="center">Copyright © 2000-2004 Apache Software Foundation. | |||||
| All rights Reserved.</p> | All rights Reserved.</p> | ||||
| </body> | </body> | ||||
| @@ -1,7 +1,7 @@ | |||||
| /* | /* | ||||
| * The Apache Software License, Version 1.1 | * The Apache Software License, Version 1.1 | ||||
| * | * | ||||
| * Copyright (c) 2000-2003 The Apache Software Foundation. All rights | |||||
| * Copyright (c) 2000-2004 The Apache Software Foundation. All rights | |||||
| * reserved. | * reserved. | ||||
| * | * | ||||
| * Redistribution and use in source and binary forms, with or without | * Redistribution and use in source and binary forms, with or without | ||||
| @@ -155,6 +155,8 @@ public class Javac extends MatchingTask { | |||||
| facade = new FacadeTaskHelper("javac1.3"); | facade = new FacadeTaskHelper("javac1.3"); | ||||
| } else if (JavaEnvUtils.isJavaVersion(JavaEnvUtils.JAVA_1_4)) { | } else if (JavaEnvUtils.isJavaVersion(JavaEnvUtils.JAVA_1_4)) { | ||||
| facade = new FacadeTaskHelper("javac1.4"); | facade = new FacadeTaskHelper("javac1.4"); | ||||
| } else if (JavaEnvUtils.isJavaVersion(JavaEnvUtils.JAVA_1_5)) { | |||||
| facade = new FacadeTaskHelper("javac1.5"); | |||||
| } else { | } else { | ||||
| facade = new FacadeTaskHelper("classic"); | facade = new FacadeTaskHelper("classic"); | ||||
| } | } | ||||
| @@ -198,7 +200,7 @@ public class Javac extends MatchingTask { | |||||
| * | * | ||||
| * If you use this attribute together with jikes, you must | * If you use this attribute together with jikes, you must | ||||
| * make sure that your version of jikes supports the -source switch. | * make sure that your version of jikes supports the -source switch. | ||||
| * Legal values are 1.3 and 1.4 - by default, no -source argument | |||||
| * Legal values are 1.3, 1.4 and 1.5 - by default, no -source argument | |||||
| * will be used at all. | * will be used at all. | ||||
| * | * | ||||
| * @param v Value to assign to source. | * @param v Value to assign to source. | ||||
| @@ -845,7 +847,7 @@ public class Javac extends MatchingTask { | |||||
| * | * | ||||
| * @param compilerImpl the name of the compiler implementation | * @param compilerImpl the name of the compiler implementation | ||||
| * @return true if compilerImpl is "modern", "classic", "javac1.1", | * @return true if compilerImpl is "modern", "classic", "javac1.1", | ||||
| * "javac1.2", "javac1.3" or "javac1.4". | |||||
| * "javac1.2", "javac1.3", "javac1.4" or "javac1.5". | |||||
| */ | */ | ||||
| protected boolean isJdkCompiler(String compilerImpl) { | protected boolean isJdkCompiler(String compilerImpl) { | ||||
| return "modern".equals(compilerImpl) | return "modern".equals(compilerImpl) | ||||
| @@ -853,7 +855,8 @@ public class Javac extends MatchingTask { | |||||
| || "javac1.1".equals(compilerImpl) | || "javac1.1".equals(compilerImpl) | ||||
| || "javac1.2".equals(compilerImpl) | || "javac1.2".equals(compilerImpl) | ||||
| || "javac1.3".equals(compilerImpl) | || "javac1.3".equals(compilerImpl) | ||||
| || "javac1.4".equals(compilerImpl); | |||||
| || "javac1.4".equals(compilerImpl) | |||||
| || "javac1.5".equals(compilerImpl); | |||||
| } | } | ||||
| /** | /** | ||||
| @@ -1,7 +1,7 @@ | |||||
| /* | /* | ||||
| * The Apache Software License, Version 1.1 | * The Apache Software License, Version 1.1 | ||||
| * | * | ||||
| * Copyright (c) 2001-2003 The Apache Software Foundation. All rights | |||||
| * Copyright (c) 2001-2004 The Apache Software Foundation. All rights | |||||
| * reserved. | * reserved. | ||||
| * | * | ||||
| * Redistribution and use in source and binary forms, with or without | * Redistribution and use in source and binary forms, with or without | ||||
| @@ -80,7 +80,7 @@ public class CompilerAdapterFactory { | |||||
| * <ul><li>jikes = jikes compiler | * <ul><li>jikes = jikes compiler | ||||
| * <li>classic, javac1.1, javac1.2 = the standard compiler from JDK | * <li>classic, javac1.1, javac1.2 = the standard compiler from JDK | ||||
| * 1.1/1.2 | * 1.1/1.2 | ||||
| * <li>modern, javac1.3, javac1.4 = the compiler of JDK 1.3+ | |||||
| * <li>modern, javac1.3, javac1.4, javac1.5 = the compiler of JDK 1.3+ | |||||
| * <li>jvc, microsoft = the command line compiler from Microsoft's SDK | * <li>jvc, microsoft = the command line compiler from Microsoft's SDK | ||||
| * for Java / Visual J++ | * for Java / Visual J++ | ||||
| * <li>kjc = the kopi compiler</li> | * <li>kjc = the kopi compiler</li> | ||||
| @@ -100,7 +100,9 @@ public class CompilerAdapterFactory { | |||||
| throws BuildException { | throws BuildException { | ||||
| boolean isClassicCompilerSupported = true; | boolean isClassicCompilerSupported = true; | ||||
| //as new versions of java come out, add them to this test | //as new versions of java come out, add them to this test | ||||
| if (JavaEnvUtils.isJavaVersion(JavaEnvUtils.JAVA_1_4)) { | |||||
| if (!JavaEnvUtils.isJavaVersion(JavaEnvUtils.JAVA_1_1) | |||||
| && !JavaEnvUtils.isJavaVersion(JavaEnvUtils.JAVA_1_2) | |||||
| && !JavaEnvUtils.isJavaVersion(JavaEnvUtils.JAVA_1_3)) { | |||||
| isClassicCompilerSupported = false; | isClassicCompilerSupported = false; | ||||
| } | } | ||||
| @@ -127,7 +129,8 @@ public class CompilerAdapterFactory { | |||||
| //but on java>=1.4 we just bail out early | //but on java>=1.4 we just bail out early | ||||
| if (compilerType.equalsIgnoreCase("modern") | if (compilerType.equalsIgnoreCase("modern") | ||||
| || compilerType.equalsIgnoreCase("javac1.3") | || compilerType.equalsIgnoreCase("javac1.3") | ||||
| || compilerType.equalsIgnoreCase("javac1.4")) { | |||||
| || compilerType.equalsIgnoreCase("javac1.4") | |||||
| || compilerType.equalsIgnoreCase("javac1.5")) { | |||||
| // does the modern compiler exist? | // does the modern compiler exist? | ||||
| if (doesModernCompilerExist()) { | if (doesModernCompilerExist()) { | ||||
| return new Javac13(); | return new Javac13(); | ||||
| @@ -1,7 +1,7 @@ | |||||
| /* | /* | ||||
| * The Apache Software License, Version 1.1 | * The Apache Software License, Version 1.1 | ||||
| * | * | ||||
| * Copyright (c) 2001-2003 The Apache Software Foundation. All rights | |||||
| * Copyright (c) 2001-2004 The Apache Software Foundation. All rights | |||||
| * reserved. | * reserved. | ||||
| * | * | ||||
| * Redistribution and use in source and binary forms, with or without | * Redistribution and use in source and binary forms, with or without | ||||
| @@ -1,7 +1,7 @@ | |||||
| /* | /* | ||||
| * The Apache Software License, Version 1.1 | * The Apache Software License, Version 1.1 | ||||
| * | * | ||||
| * Copyright (c) 2002-2003 The Apache Software Foundation. All rights | |||||
| * Copyright (c) 2002-2004 The Apache Software Foundation. All rights | |||||
| * reserved. | * reserved. | ||||
| * | * | ||||
| * Redistribution and use in source and binary forms, with or without | * Redistribution and use in source and binary forms, with or without | ||||
| @@ -96,6 +96,8 @@ public class JavaEnvUtils { | |||||
| public static final String JAVA_1_3 = "1.3"; | public static final String JAVA_1_3 = "1.3"; | ||||
| /** Version constant for Java 1.4 */ | /** Version constant for Java 1.4 */ | ||||
| public static final String JAVA_1_4 = "1.4"; | public static final String JAVA_1_4 = "1.4"; | ||||
| /** Version constant for Java 1.5 */ | |||||
| public static final String JAVA_1_5 = "1.5"; | |||||
| /** array of packages in the runtime */ | /** array of packages in the runtime */ | ||||
| private static Vector jrePackages; | private static Vector jrePackages; | ||||
| @@ -104,6 +106,7 @@ public class JavaEnvUtils { | |||||
| static { | static { | ||||
| // Determine the Java version by looking at available classes | // Determine the Java version by looking at available classes | ||||
| // java.lang.Readable was introduced in JDK 1.5 | |||||
| // java.lang.CharSequence was introduced in JDK 1.4 | // java.lang.CharSequence was introduced in JDK 1.4 | ||||
| // java.lang.StrictMath was introduced in JDK 1.3 | // java.lang.StrictMath was introduced in JDK 1.3 | ||||
| // java.lang.ThreadLocal was introduced in JDK 1.2 | // java.lang.ThreadLocal was introduced in JDK 1.2 | ||||
| @@ -125,6 +128,9 @@ public class JavaEnvUtils { | |||||
| Class.forName("java.lang.CharSequence"); | Class.forName("java.lang.CharSequence"); | ||||
| javaVersion = JAVA_1_4; | javaVersion = JAVA_1_4; | ||||
| javaVersionNumber++; | javaVersionNumber++; | ||||
| Class.forName("java.lang.Readable"); | |||||
| javaVersion = JAVA_1_5; | |||||
| javaVersionNumber++; | |||||
| } catch (Throwable t) { | } catch (Throwable t) { | ||||
| // swallow as we've hit the max class version that | // swallow as we've hit the max class version that | ||||
| // we have | // we have | ||||
| @@ -275,6 +281,7 @@ public class JavaEnvUtils { | |||||
| private static void buildJrePackages() { | private static void buildJrePackages() { | ||||
| jrePackages = new Vector(); | jrePackages = new Vector(); | ||||
| switch(javaVersionNumber) { | switch(javaVersionNumber) { | ||||
| case 15: | |||||
| case 14: | case 14: | ||||
| jrePackages.addElement("org.apache.crimson"); | jrePackages.addElement("org.apache.crimson"); | ||||
| jrePackages.addElement("org.apache.xalan"); | jrePackages.addElement("org.apache.xalan"); | ||||
| @@ -317,6 +324,7 @@ public class JavaEnvUtils { | |||||
| Vector tests = new Vector(); | Vector tests = new Vector(); | ||||
| tests.addElement("java.lang.Object"); | tests.addElement("java.lang.Object"); | ||||
| switch(javaVersionNumber) { | switch(javaVersionNumber) { | ||||
| case 15: | |||||
| case 14: | case 14: | ||||
| tests.addElement("sun.audio.AudioPlayer"); | tests.addElement("sun.audio.AudioPlayer"); | ||||
| tests.addElement("org.apache.crimson.parser.ContentModel"); | tests.addElement("org.apache.crimson.parser.ContentModel"); | ||||