| @@ -820,8 +820,8 @@ public class ProjectHelper2 extends ProjectHelper { | |||
| return; | |||
| } | |||
| // set explicitly before starting ? | |||
| if (project.getProperty("basedir") != null) { | |||
| project.setBasedir(project.getProperty("basedir")); | |||
| if (project.getProperty(MagicNames.PROJECT_BASEDIR) != null) { | |||
| project.setBasedir(project.getProperty(MagicNames.PROJECT_BASEDIR)); | |||
| } else { | |||
| // Default for baseDir is the location of the build file. | |||
| if (baseDir == null) { | |||
| @@ -28,6 +28,7 @@ import java.util.Locale; | |||
| import org.apache.tools.ant.BuildException; | |||
| import org.apache.tools.ant.IntrospectionHelper; | |||
| import org.apache.tools.ant.Location; | |||
| import org.apache.tools.ant.MagicNames; | |||
| import org.apache.tools.ant.Project; | |||
| import org.apache.tools.ant.ProjectHelper; | |||
| import org.apache.tools.ant.RuntimeConfigurable; | |||
| @@ -423,8 +424,8 @@ public class ProjectHelperImpl extends ProjectHelper { | |||
| helperImpl.project.addReference(id, helperImpl.project); | |||
| } | |||
| if (helperImpl.project.getProperty("basedir") != null) { | |||
| helperImpl.project.setBasedir(helperImpl.project.getProperty("basedir")); | |||
| if (helperImpl.project.getProperty(MagicNames.PROJECT_BASEDIR) != null) { | |||
| helperImpl.project.setBasedir(helperImpl.project.getProperty(MagicNames.PROJECT_BASEDIR)); | |||
| } else { | |||
| if (baseDir == null) { | |||
| helperImpl.project.setBasedir(helperImpl.buildFileParent.getAbsolutePath()); | |||
| @@ -595,7 +595,7 @@ public class Path extends DataType implements Cloneable, ResourceCollection { | |||
| if (JavaEnvUtils.isKaffe()) { | |||
| // newer versions of Kaffe (1.1.1+) won't have this, | |||
| // but this will be sorted by FileSet anyway. | |||
| File kaffeShare = new File(System.getProperty("java.home") | |||
| File kaffeShare = new File(JavaEnvUtils.getJavaHome() | |||
| + File.separator + "share" | |||
| + File.separator + "kaffe"); | |||
| if (kaffeShare.isDirectory()) { | |||
| @@ -612,57 +612,44 @@ public class Path extends DataType implements Cloneable, ResourceCollection { | |||
| // TODO is this code still necessary? is there any 1.2+ port? | |||
| // Pull in *.zip from packages directory | |||
| FileSet msZipFiles = new FileSet(); | |||
| msZipFiles.setDir(new File(System.getProperty("java.home") | |||
| + File.separator + "Packages")); | |||
| msZipFiles.setDir(new File(JavaEnvUtils.getJavaHome() | |||
| + File.separator + "Packages")); | |||
| msZipFiles.setIncludes("*.ZIP"); | |||
| addFileset(msZipFiles); | |||
| } else { | |||
| // JDK 1.2+ seems to set java.home to the JRE directory. | |||
| addExisting(new Path(null, | |||
| System.getProperty("java.home") | |||
| + File.separator + "lib" | |||
| + File.separator + "rt.jar")); | |||
| addExisting(new Path(null, JavaEnvUtils.getJavaHome() | |||
| + File.separator + "lib" + File.separator + "rt.jar")); | |||
| // Just keep the old version as well and let addExisting | |||
| // sort it out. | |||
| addExisting(new Path(null, | |||
| System.getProperty("java.home") | |||
| + File.separator + "jre" | |||
| + File.separator + "lib" | |||
| + File.separator + "rt.jar")); | |||
| addExisting(new Path(null, JavaEnvUtils.getJavaHome() | |||
| + File.separator + "jre" + File.separator + "lib" | |||
| + File.separator + "rt.jar")); | |||
| // Sun's and Apple's 1.4 have JCE and JSSE in separate jars. | |||
| for (String secJar : Arrays.asList("jce", "jsse")) { | |||
| addExisting(new Path(null, | |||
| System.getProperty("java.home") | |||
| + File.separator + "lib" | |||
| + File.separator + secJar + ".jar")); | |||
| addExisting(new Path(null, | |||
| System.getProperty("java.home") | |||
| + File.separator + ".." | |||
| + File.separator + "Classes" | |||
| + File.separator + secJar + ".jar")); | |||
| addExisting(new Path(null, JavaEnvUtils.getJavaHome() | |||
| + File.separator + "lib" | |||
| + File.separator + secJar + ".jar")); | |||
| addExisting(new Path(null, JavaEnvUtils.getJavaHome() | |||
| + File.separator + ".." + File.separator + "Classes" | |||
| + File.separator + secJar + ".jar")); | |||
| } | |||
| // IBM's 1.4 has rt.jar split into 4 smaller jars and a combined | |||
| // JCE/JSSE in security.jar. | |||
| for (String ibmJar : Arrays.asList("core", "graphics", "security", "server", "xml")) { | |||
| addExisting(new Path(null, | |||
| System.getProperty("java.home") | |||
| + File.separator + "lib" | |||
| + File.separator + ibmJar + ".jar")); | |||
| addExisting(new Path(null, JavaEnvUtils.getJavaHome() | |||
| + File.separator + "lib" + File.separator + ibmJar + ".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")); | |||
| addExisting(new Path(null, JavaEnvUtils.getJavaHome() | |||
| + File.separator + ".." + File.separator + "Classes" | |||
| + File.separator + "classes.jar")); | |||
| addExisting(new Path(null, JavaEnvUtils.getJavaHome() | |||
| + File.separator + ".." + File.separator + "Classes" | |||
| + File.separator + "ui.jar")); | |||
| } | |||
| } | |||
| @@ -23,6 +23,7 @@ import static org.junit.Assume.assumeFalse; | |||
| import org.apache.tools.ant.BuildException; | |||
| import org.apache.tools.ant.BuildFileRule; | |||
| import org.apache.tools.ant.MagicNames; | |||
| import org.apache.tools.ant.taskdefs.condition.Os; | |||
| import org.junit.Before; | |||
| import org.junit.Rule; | |||
| @@ -78,7 +79,8 @@ public class DirnameTest { | |||
| @Test | |||
| public void test5() { | |||
| buildRule.executeTarget("test5"); | |||
| assertEquals("dirname failed", buildRule.getProject().getProperty("basedir"), | |||
| assertEquals("dirname failed", | |||
| buildRule.getProject().getProperty(MagicNames.PROJECT_BASEDIR), | |||
| buildRule.getProject().getProperty("base.dir")); | |||
| } | |||
| @@ -26,6 +26,7 @@ import static org.junit.Assume.assumeNoException; | |||
| import org.apache.tools.ant.BuildException; | |||
| import org.apache.tools.ant.BuildFileRule; | |||
| import org.apache.tools.ant.MagicNames; | |||
| import org.apache.tools.ant.util.FileUtils; | |||
| import org.junit.Before; | |||
| import org.junit.Rule; | |||
| @@ -83,7 +84,7 @@ public class PropertyTest { | |||
| @Test | |||
| public void test5() { | |||
| String baseDir = buildRule.getProject().getProperty("basedir"); | |||
| String baseDir = buildRule.getProject().getProperty(MagicNames.PROJECT_BASEDIR); | |||
| String uri = FILE_UTILS.toURI(baseDir + "/property3.properties"); | |||
| buildRule.getProject().setNewProperty("test5.url", uri); | |||
| @@ -51,7 +51,7 @@ public class JavaEnvUtilsTest { | |||
| @Test | |||
| public void testGetExecutableWindows() { | |||
| assumeTrue("Test only runs on windows", Os.isFamily("windows")); | |||
| String javaHome = FILE_UTILS.normalize(System.getProperty("java.home")) | |||
| String javaHome = FILE_UTILS.normalize(JavaEnvUtils.getJavaHome()) | |||
| .getAbsolutePath(); | |||
| String j = JavaEnvUtils.getJreExecutable("java"); | |||
| @@ -89,7 +89,7 @@ public class JavaEnvUtilsTest { | |||
| public void testGetExecutableMostPlatforms() { | |||
| assumeFalse("Test only runs on non Netware and non Windows systems", | |||
| Os.isName("netware") || Os.isFamily("windows")); | |||
| String javaHome = FILE_UTILS.normalize(System.getProperty("java.home")).getAbsolutePath(); | |||
| String javaHome = FILE_UTILS.normalize(JavaEnvUtils.getJavaHome()).getAbsolutePath(); | |||
| // could still be OS/2 | |||
| String extension = Os.isFamily("dos") ? ".exe" : ""; | |||