Browse Source

Make build.sysclasspath handling more consistent.

PR: 15014


git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@273795 13f79535-47bb-0310-9956-ffa450edef68
master
Stefan Bodewig 22 years ago
parent
commit
6a65262ae7
9 changed files with 43 additions and 40 deletions
  1. +2
    -0
      WHATSNEW
  2. +2
    -2
      src/main/org/apache/tools/ant/taskdefs/Javadoc.java
  3. +9
    -13
      src/main/org/apache/tools/ant/taskdefs/compilers/DefaultCompilerAdapter.java
  4. +4
    -2
      src/main/org/apache/tools/ant/taskdefs/optional/Javah.java
  5. +6
    -3
      src/main/org/apache/tools/ant/taskdefs/optional/ejb/IPlanetEjbcTask.java
  6. +2
    -2
      src/main/org/apache/tools/ant/taskdefs/optional/jsp/WLJspc.java
  7. +3
    -2
      src/main/org/apache/tools/ant/taskdefs/optional/jsp/compilers/JasperC.java
  8. +9
    -12
      src/main/org/apache/tools/ant/taskdefs/rmic/DefaultRmicAdapter.java
  9. +6
    -4
      src/main/org/apache/tools/ant/types/XMLCatalog.java

+ 2
- 0
WHATSNEW View File

@@ -88,6 +88,8 @@ Fixed bugs:
* The <get> task can now be compiled (and Ant thus bootstrapped) using * The <get> task can now be compiled (and Ant thus bootstrapped) using
Kaffee. Kaffee.


* build.sysclasspath will now be honored by more tasks.

Other changes: Other changes:
-------------- --------------
* The filesetmanifest attribute of <jar> has been reenabled. * The filesetmanifest attribute of <jar> has been reenabled.


+ 2
- 2
src/main/org/apache/tools/ant/taskdefs/Javadoc.java View File

@@ -1,7 +1,7 @@
/* /*
* The Apache Software License, Version 1.1 * The Apache Software License, Version 1.1
* *
* Copyright (c) 2000-2002 The Apache Software Foundation. All rights
* Copyright (c) 2000-2003 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
@@ -1559,7 +1559,7 @@ public class Javadoc extends Task {
} }


if (classpath == null) { if (classpath == null) {
classpath = Path.systemClasspath;
classpath = (new Path(getProject())).concatSystemClasspath("last");
} else { } else {
classpath = classpath.concatSystemClasspath("ignore"); classpath = classpath.concatSystemClasspath("ignore");
} }


+ 9
- 13
src/main/org/apache/tools/ant/taskdefs/compilers/DefaultCompilerAdapter.java View File

@@ -1,7 +1,7 @@
/* /*
* The Apache Software License, Version 1.1 * The Apache Software License, Version 1.1
* *
* Copyright (c) 2001-2002 The Apache Software Foundation. All rights
* Copyright (c) 2001-2003 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
@@ -167,20 +167,16 @@ public abstract class DefaultCompilerAdapter implements CompilerAdapter {
} }


// Combine the build classpath with the system classpath, in an // Combine the build classpath with the system classpath, in an
// order determined by the value of build.classpath
// order determined by the value of build.sysclasspath


if (compileClasspath == null) {
if (includeAntRuntime) {
classpath.addExisting(Path.systemClasspath);
}
Path cp = compileClasspath;
if (cp == null) {
cp = new Path(project);
}
if (includeAntRuntime) {
classpath.addExisting(cp.concatSystemClasspath("last"));
} else { } else {
if (includeAntRuntime) {
classpath.addExisting(compileClasspath
.concatSystemClasspath("last"));
} else {
classpath.addExisting(compileClasspath
.concatSystemClasspath("ignore"));
}
classpath.addExisting(cp.concatSystemClasspath("ignore"));
} }


if (includeJavaRuntime) { if (includeJavaRuntime) {


+ 4
- 2
src/main/org/apache/tools/ant/taskdefs/optional/Javah.java View File

@@ -1,7 +1,7 @@
/* /*
* The Apache Software License, Version 1.1 * The Apache Software License, Version 1.1
* *
* Copyright (c) 2000-2002 The Apache Software Foundation. All rights
* Copyright (c) 2000-2003 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
@@ -296,7 +296,9 @@ public class Javah extends Task {
} }


if (classpath == null) { if (classpath == null) {
classpath = Path.systemClasspath;
classpath = (new Path(getProject())).concatSystemClasspath("last");
} else {
classpath = classpath.concatSystemClasspath("ignore");
} }


String compiler = getProject().getProperty("build.compiler"); String compiler = getProject().getProperty("build.compiler");


+ 6
- 3
src/main/org/apache/tools/ant/taskdefs/optional/ejb/IPlanetEjbcTask.java View File

@@ -1,7 +1,7 @@
/* /*
* The Apache Software License, Version 1.1 * The Apache Software License, Version 1.1
* *
* Copyright (c) 2001-2002 The Apache Software Foundation. All rights
* Copyright (c) 2001-2003 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
@@ -342,10 +342,13 @@ public class IPlanetEjbcTask extends Task {
* @return Path The classpath to be used for EJBc. * @return Path The classpath to be used for EJBc.
*/ */
private Path getClasspath() { private Path getClasspath() {
Path cp = null;
if (classpath == null) { if (classpath == null) {
classpath = Path.systemClasspath;
cp = (new Path(getProject())).concatSystemClasspath("last");
} else {
cp = classpath.concatSystemClasspath("ignore");
} }


return classpath;
return cp;
} }
} }

+ 2
- 2
src/main/org/apache/tools/ant/taskdefs/optional/jsp/WLJspc.java View File

@@ -1,7 +1,7 @@
/* /*
* The Apache Software License, Version 1.1 * The Apache Software License, Version 1.1
* *
* Copyright (c) 2000,2002 The Apache Software Foundation. All rights
* Copyright (c) 2000,2002-2003 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
@@ -150,7 +150,7 @@ public class WLJspc extends MatchingTask {
compileClasspath = new Path(getProject()); compileClasspath = new Path(getProject());
} }
compileClasspath.append(Path.systemClasspath);
compileClasspath = compileClasspath.concatSystemClasspath();
String[] files = ds.getIncludedFiles(); String[] files = ds.getIncludedFiles();
//Weblogic.jspc calls System.exit() ... have to fork //Weblogic.jspc calls System.exit() ... have to fork


+ 3
- 2
src/main/org/apache/tools/ant/taskdefs/optional/jsp/compilers/JasperC.java View File

@@ -1,7 +1,7 @@
/* /*
* The Apache Software License, Version 1.1 * The Apache Software License, Version 1.1
* *
* Copyright (c) 2001-2002 The Apache Software Foundation. All rights
* Copyright (c) 2001-2003 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
@@ -106,7 +106,8 @@ public class JasperC extends DefaultJspCompilerAdapter {
if (getJspc().getClasspath() != null) { if (getJspc().getClasspath() != null) {
getProject().log("using user supplied classpath: "+getJspc().getClasspath(), getProject().log("using user supplied classpath: "+getJspc().getClasspath(),
Project.MSG_DEBUG); Project.MSG_DEBUG);
java.setClasspath(getJspc().getClasspath());
java.setClasspath(getJspc().getClasspath()
.concatSystemClasspath("ignore"));
} else { } else {
Path classpath=new Path(getProject()); Path classpath=new Path(getProject());
classpath=classpath.concatSystemClasspath("only"); classpath=classpath.concatSystemClasspath("only");


+ 9
- 12
src/main/org/apache/tools/ant/taskdefs/rmic/DefaultRmicAdapter.java View File

@@ -1,7 +1,7 @@
/* /*
* The Apache Software License, Version 1.1 * The Apache Software License, Version 1.1
* *
* Copyright (c) 2001-2002 The Apache Software Foundation. All rights
* Copyright (c) 2001-2003 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
@@ -144,18 +144,15 @@ public abstract class DefaultRmicAdapter implements RmicAdapter {


// Combine the build classpath with the system classpath, in an // Combine the build classpath with the system classpath, in an
// order determined by the value of build.sysclasspath // order determined by the value of build.sysclasspath
if (attributes.getClasspath() == null) {
if (attributes.getIncludeantruntime()) {
classpath.addExisting(Path.systemClasspath);
}
Path cp = attributes.getClasspath();
if (cp == null) {
cp = new Path(attributes.getProject());
}
if (attributes.getIncludeantruntime()) {
classpath.addExisting(cp.concatSystemClasspath("last"));
} else { } else {
if (attributes.getIncludeantruntime()) {
classpath.addExisting(attributes.getClasspath()
.concatSystemClasspath("last"));
} else {
classpath.addExisting(attributes.getClasspath()
.concatSystemClasspath("ignore"));
}
classpath.addExisting(cp.concatSystemClasspath("ignore"));
} }


if (attributes.getIncludejavaruntime()) { if (attributes.getIncludejavaruntime()) {


+ 6
- 4
src/main/org/apache/tools/ant/types/XMLCatalog.java View File

@@ -1,7 +1,7 @@
/* /*
* The Apache Software License, Version 1.1 * The Apache Software License, Version 1.1
* *
* Copyright (c) 2002 The Apache Software Foundation. All rights
* Copyright (c) 2002-2003 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
@@ -697,11 +697,13 @@ public class XMLCatalog extends DataType
InputSource source = null; InputSource source = null;


AntClassLoader loader = null; AntClassLoader loader = null;
if (classpath != null) {
loader = new AntClassLoader(getProject(), classpath);
Path cp = classpath;
if (cp != null) {
cp = classpath.concatSystemClasspath("ignore");
} else { } else {
loader = new AntClassLoader(getProject(), Path.systemClasspath);
cp = (new Path(getProject())).concatSystemClasspath("last");
} }
loader = new AntClassLoader(getProject(), cp);


// //
// for classpath lookup we ignore the base directory // for classpath lookup we ignore the base directory


Loading…
Cancel
Save