Search code examples
antcvsbuild.xmlwincvscvsnt

Using the nested element module in cvs task in ant build.xml


I have problems connecting to CVS using ant build.xml. I figured out the reason was whitespaces in package attribute of CVS task as:

<cvs cvsRoot=":pserver:[email protected]:/CVSREPO_CCP_MIG" dest="${basedir}" package="My Test Project"/>

I learned from the ant website( http://ant.apache.org/manual/Tasks/cvs.html ) that we may Use a nested <module> element if you want to specify a module with spaces in its name. This specifies a package/module to work on, unlike the package attribute, modules specified using this attribute can contain spaces in their name.

I tried using the following:

<cvs cvsRoot=":pserver:[email protected]:/CVSREPO_CCP_MIG" dest="${basedir}">
<module name="My Test Project"/>
</cvs>

This again complains:

build.xml:39: cvs doesn't support the nested "module" element.

How can I use the module element with the CVS tag?

The Ant version is 1.7.x.


Solution

  • As suggested by the comments above, the nested "module" element is available for Ant ver 1.8 +.
    However, if you are on one of the earlier versions, you may specify your package/module name under package attribute of CVS task by adding '"' on the either end of the attribute value.
    e.g. We can replace package="My Test Project" with package=""My Test Project"" in here.