I just upgraded from Ant 1.7.0 to Ant 1.8.0 and now many of my Ant builds are broken. I have a large build.xml file for my entire project, which has a mixture of Java and Python components, that can be built on PC or Mac. When I run the top level ant command it looks like this: ant makepc
Various Python builds are kicked off using lines like these in the build.xml file: <exec executable="python" dir="${pythoncomponent}" failonerror="true"> <arg value="setup.py"/> <arg value="install"/> </exec> Some of these Python builds have internal Java components for which they run their own ant build in their own sub-folder trees. The problem is that as of 1.8.0 these separate ant builds, initiated by a sub-process of the main ant build, somehow get passed the "makepc" target of the main ant build, instead of running their own default target as defined in each lower level build.xml file. Ant did not work like this in version 1.7.0. Is this a new "feature" of 1.8.0 or is it a bug that I should file (I've checked the Bugzilla database and can't find anything like this)? If its a "feature", how do I turn it off? I also have some java sub-components that have their own sub-builds. With Ant 1.7.0 I was doing these sub-builds with <exec executable="ant" ... /> and these had the same problem with 1.8.0 in that the sub-builds inherited the main build's target. I worked around this problem by replcacing the exec of ant with a direct ant call like this: <ant inheritAll="false" dir="${javacomponent}"/> where the inheritAll="false" was necessary to work around this inherited target problem in 1.8.0. Thanks, Martin