Browse Source

report name of corrupt ZIP to System.err, PR 47593

git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@798838 13f79535-47bb-0310-9956-ffa450edef68
master
Stefan Bodewig 16 years ago
parent
commit
329f6d356a
3 changed files with 23 additions and 9 deletions
  1. +3
    -1
      src/main/org/apache/tools/ant/AntClassLoader.java
  2. +19
    -7
      src/tests/junit/org/apache/tools/ant/AntClassLoaderTest.java
  3. +1
    -1
      src/tests/junit/org/apache/tools/ant/BuildFileTest.java

+ 3
- 1
src/main/org/apache/tools/ant/AntClassLoader.java View File

@@ -1027,7 +1027,9 @@ public class AntClassLoader extends ClassLoader implements SubBuildListener {
}
}
} catch (Exception e) {
log("Unable to obtain resource from " + file + ": " + e, Project.MSG_WARN);
String msg = "Unable to obtain resource from " + file + ": ";
log(msg + e, Project.MSG_WARN);
System.err.println(msg);
e.printStackTrace();
}
return null;


+ 19
- 7
src/tests/junit/org/apache/tools/ant/AntClassLoaderTest.java View File

@@ -19,7 +19,7 @@
package org.apache.tools.ant;

import java.io.File;
import java.io.IOException;
import java.io.PrintStream;
import org.apache.tools.ant.types.Path;

/**
@@ -160,12 +160,24 @@ public class AntClassLoaderTest extends BuildFileTest {
myPath.setLocation(jar);
getProject().setUserProperty("build.sysclasspath","ignore");
loader = getProject().createClassLoader(myPath);
loader.getResource("foo.txt");
String log = getLog();
int startMessage = log.indexOf("Unable to obtain resource from ");
assertTrue(startMessage >= 0);
assertTrue(log.indexOf("foo.jar", startMessage) > 0);

PrintStream sysErr = System.err;
try {
StringBuffer errBuffer = new StringBuffer();
PrintStream err =
new PrintStream(new BuildFileTest.AntOutputStream(errBuffer));
System.setErr(err);
loader.getResource("foo.txt");
String log = getLog();
int startMessage = log.indexOf("Unable to obtain resource from ");
assertTrue(startMessage >= 0);
assertTrue(log.indexOf("foo.jar", startMessage) > 0);
log = errBuffer.toString();
startMessage = log.indexOf("Unable to obtain resource from ");
assertTrue(startMessage >= 0);
assertTrue(log.indexOf("foo.jar", startMessage) > 0);
} finally {
System.setErr(sysErr);
}
}

private static class GetPackageWrapper extends ClassLoader {


+ 1
- 1
src/tests/junit/org/apache/tools/ant/BuildFileTest.java View File

@@ -477,7 +477,7 @@ public abstract class BuildFileTest extends TestCase {
/**
* an output stream which saves stuff to our buffer.
*/
private static class AntOutputStream extends java.io.OutputStream {
protected static class AntOutputStream extends java.io.OutputStream {
private StringBuffer buffer;

public AntOutputStream( StringBuffer buffer ) {


Loading…
Cancel
Save