You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ant.apache.org by mb...@apache.org on 2006/06/29 23:57:15 UTC
svn commit: r418146 - in /ant/core/trunk: WHATSNEW
src/main/org/apache/tools/ant/taskdefs/ExecuteJava.java
Author: mbenson
Date: Thu Jun 29 14:57:15 2006
New Revision: 418146
URL: http://svn.apache.org/viewvc?rev=418146&view=rev
Log:
If the class invoked by the <java> task threw a ClassNotFoundException,
this was misinterpreted as the specified class itself not being found.
Modified:
ant/core/trunk/WHATSNEW
ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/ExecuteJava.java
Modified: ant/core/trunk/WHATSNEW
URL: http://svn.apache.org/viewvc/ant/core/trunk/WHATSNEW?rev=418146&r1=418145&r2=418146&view=diff
==============================================================================
--- ant/core/trunk/WHATSNEW (original)
+++ ant/core/trunk/WHATSNEW Thu Jun 29 14:57:15 2006
@@ -235,6 +235,9 @@
* <scp> can now handle uris with @s other than the final one denoting the
domain. Bugzilla 38082.
+* If the class invoked by the <java> task threw a ClassNotFoundException,
+ this was misinterpreted as the specified class itself not being found.
+
Other changes:
--------------
* took in bugzilla report 39320.
Modified: ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/ExecuteJava.java
URL: http://svn.apache.org/viewvc/ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/ExecuteJava.java?rev=418146&r1=418145&r2=418146&view=diff
==============================================================================
--- ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/ExecuteJava.java (original)
+++ ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/ExecuteJava.java Thu Jun 29 14:57:15 2006
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2006 The Apache Software Foundation
+ * Copyright 2000-2006 The Apache Software Foundation
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -120,17 +120,23 @@
sysProperties.setSystem();
}
Class target = null;
- if (classpath == null) {
- target = Class.forName(classname);
- } else {
- loader = project.createClassLoader(classpath);
- loader.setParent(project.getCoreLoader());
- loader.setParentFirst(false);
- loader.addJavaLibraries();
- loader.setIsolated(true);
- loader.setThreadContextLoader();
- loader.forceLoadClass(classname);
- target = Class.forName(classname, true, loader);
+ try {
+ if (classpath == null) {
+ target = Class.forName(classname);
+ } else {
+ loader = project.createClassLoader(classpath);
+ loader.setParent(project.getCoreLoader());
+ loader.setParentFirst(false);
+ loader.addJavaLibraries();
+ loader.setIsolated(true);
+ loader.setThreadContextLoader();
+ loader.forceLoadClass(classname);
+ target = Class.forName(classname, true, loader);
+ }
+ } catch (ClassNotFoundException e) {
+ throw new BuildException("Could not find " + classname + "."
+ + " Make sure you have it in your"
+ + " classpath");
}
main = target.getMethod("main", new Class[] {String[].class});
if (main == null) {
@@ -176,10 +182,6 @@
if (caught != null) {
throw caught;
}
- } catch (ClassNotFoundException e) {
- throw new BuildException("Could not find " + classname + "."
- + " Make sure you have it in your"
- + " classpath");
} catch (BuildException e) {
throw e;
} catch (SecurityException e) {
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org