ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stefan Bodewig <bode...@apache.org>
Subject Re: Junit Task warning about multiple versions of Ant
Date Thu, 12 Apr 2018 14:57:12 GMT
On 2018-04-12, Nicolas Lalevée wrote:

> The Junit task is printing a warning if it finds multiple versions of
> Ant in the classpath of the unit tests. It seems it doesn’t do
> correctly the job if the ant runtime is explicitly removed from the
> classpath.

Quite possible.

> Here the function which checks the classpath:
> https://github.com/apache/ant/blob/master/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTask.java#L1362
<https://github.com/apache/ant/blob/master/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTask.java#L1362>

this is in the forked case.

> And here is the one which build the classloader during the actual forked run:
> https://github.com/apache/ant/blob/master/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTask.java#L1952
<https://github.com/apache/ant/blob/master/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTask.java#L1952>

AFAICT createClassloader is not invoked for forked VMs, only in the
non-forked case.

> Shouldn’t the classloader be built the same way in both function?

In the forked case, the classloader is not built by the task, the
CommandLineJava instance collects the classpath and sets it as
-classpath command line argument.

> trying to release Ivy, finding bugs in Ant :p

:-)

Stefan

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org


Mime
View raw message