git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@269845 13f79535-47bb-0310-9956-ffa450edef68master
@@ -68,6 +68,7 @@ import java.io.File; | |||
import java.io.PrintWriter; | |||
import java.io.FileWriter; | |||
import java.io.IOException; | |||
import java.util.Locale; | |||
import java.util.Random; | |||
/** | |||
@@ -165,48 +166,7 @@ public abstract class DefaultCompilerAdapter implements CompilerAdapter { | |||
} | |||
if (includeJavaRuntime) { | |||
// XXX move this stuff to a separate class, code is identical to | |||
// code in ../rmic/DefaultRmicAdapter | |||
if (System.getProperty("java.vendor").toLowerCase().indexOf("microsoft") >= 0) { | |||
// Pull in *.zip from packages directory | |||
FileSet msZipFiles = new FileSet(); | |||
msZipFiles.setDir(new File(System.getProperty("java.home") + File.separator + "Packages")); | |||
msZipFiles.setIncludes("*.ZIP"); | |||
classpath.addFileset(msZipFiles); | |||
} | |||
else if (Project.getJavaVersion() == Project.JAVA_1_1) { | |||
classpath.addExisting(new Path(null, | |||
System.getProperty("java.home") | |||
+ File.separator + "lib" | |||
+ File.separator | |||
+ "classes.zip")); | |||
} else { | |||
// JDK > 1.1 seems to set java.home to the JRE directory. | |||
classpath.addExisting(new Path(null, | |||
System.getProperty("java.home") | |||
+ File.separator + "lib" | |||
+ File.separator + "rt.jar")); | |||
// Just keep the old version as well and let addExistingToPath | |||
// sort it out. | |||
classpath.addExisting(new Path(null, | |||
System.getProperty("java.home") | |||
+ File.separator +"jre" | |||
+ File.separator + "lib" | |||
+ File.separator + "rt.jar")); | |||
// Added for MacOS X | |||
classpath.addExisting(new Path(null, | |||
System.getProperty("java.home") | |||
+ File.separator + ".." | |||
+ File.separator + "Classes" | |||
+ File.separator + "classes.jar")); | |||
classpath.addExisting(new Path(null, | |||
System.getProperty("java.home") | |||
+ File.separator + ".." | |||
+ File.separator + "Classes" | |||
+ File.separator + "ui.jar")); | |||
} | |||
classpath.addJavaRuntime(); | |||
} | |||
return classpath; | |||
@@ -145,55 +145,7 @@ public abstract class DefaultRmicAdapter implements RmicAdapter { | |||
} | |||
if (attributes.getIncludejavaruntime()) { | |||
// XXX move this stuff to a separate class, code is identical to | |||
// code in ../compiler/DefaultCompilerAdapter | |||
if (System.getProperty("java.vendor").toLowerCase().indexOf("microsoft") >= 0) { | |||
// Pull in *.zip from packages directory | |||
FileSet msZipFiles = new FileSet(); | |||
msZipFiles.setDir(new File(System.getProperty("java.home") + File.separator + "Packages")); | |||
msZipFiles.setIncludes("*.ZIP"); | |||
classpath.addFileset(msZipFiles); | |||
} else if (Project.getJavaVersion() == Project.JAVA_1_1) { | |||
classpath.addExisting(new Path(null, | |||
System.getProperty("java.home") | |||
+ File.separator + "lib" | |||
+ File.separator | |||
+ "classes.zip")); | |||
} else if(System.getProperty("java.vm.name").equals("Kaffe")) { | |||
FileSet kaffeJarFiles = new FileSet(); | |||
kaffeJarFiles.setDir(new File(System.getProperty("java.home") | |||
+ File.separator + "share" | |||
+ File.separator + "kaffe")); | |||
kaffeJarFiles.setIncludes("*.jar"); | |||
classpath.addFileset(kaffeJarFiles); | |||
} else { | |||
// JDK > 1.1 seems to set java.home to the JRE directory. | |||
classpath.addExisting(new Path(null, | |||
System.getProperty("java.home") | |||
+ File.separator + "lib" | |||
+ File.separator + "rt.jar")); | |||
// Just keep the old version as well and let addExistingToPath | |||
// sort it out. | |||
classpath.addExisting(new Path(null, | |||
System.getProperty("java.home") | |||
+ File.separator +"jre" | |||
+ File.separator + "lib" | |||
+ File.separator + "rt.jar")); | |||
// Added for MacOS X | |||
classpath.addExisting(new Path(null, | |||
System.getProperty("java.home") | |||
+ File.separator + ".." | |||
+ File.separator + "Classes" | |||
+ File.separator + "classes.jar")); | |||
classpath.addExisting(new Path(null, | |||
System.getProperty("java.home") | |||
+ File.separator + ".." | |||
+ File.separator + "Classes" | |||
+ File.separator + "ui.jar")); | |||
} | |||
classpath.addJavaRuntime(); | |||
} | |||
return classpath; | |||
} | |||
@@ -62,7 +62,7 @@ import org.apache.tools.ant.PathTokenizer; | |||
import java.io.File; | |||
import java.util.Enumeration; | |||
import java.util.Locale; | |||
import java.util.Stack; | |||
import java.util.Vector; | |||
@@ -518,4 +518,49 @@ public class Path extends DataType implements Cloneable { | |||
} | |||
/** | |||
* Add the Java Runtime classes to this Path instance. | |||
*/ | |||
public void addJavaRuntime() { | |||
if (System.getProperty("java.vendor").toLowerCase(Locale.US).indexOf("microsoft") >= 0) { | |||
// Pull in *.zip from packages directory | |||
FileSet msZipFiles = new FileSet(); | |||
msZipFiles.setDir(new File(System.getProperty("java.home") + File.separator + "Packages")); | |||
msZipFiles.setIncludes("*.ZIP"); | |||
addFileset(msZipFiles); | |||
} | |||
else if (Project.getJavaVersion() == Project.JAVA_1_1) { | |||
addExisting(new Path(null, | |||
System.getProperty("java.home") | |||
+ File.separator + "lib" | |||
+ File.separator | |||
+ "classes.zip")); | |||
} else { | |||
// JDK > 1.1 seems to set java.home to the JRE directory. | |||
addExisting(new Path(null, | |||
System.getProperty("java.home") | |||
+ File.separator + "lib" | |||
+ File.separator + "rt.jar")); | |||
// Just keep the old version as well and let addExistingToPath | |||
// sort it out. | |||
addExisting(new Path(null, | |||
System.getProperty("java.home") | |||
+ File.separator +"jre" | |||
+ File.separator + "lib" | |||
+ File.separator + "rt.jar")); | |||
// Added for MacOS X | |||
addExisting(new Path(null, | |||
System.getProperty("java.home") | |||
+ File.separator + ".." | |||
+ File.separator + "Classes" | |||
+ File.separator + "classes.jar")); | |||
addExisting(new Path(null, | |||
System.getProperty("java.home") | |||
+ File.separator + ".." | |||
+ File.separator + "Classes" | |||
+ File.separator + "ui.jar")); | |||
} | |||
} | |||
} |