the SourceForge Cpx site (JavaScript)


Frequently Asked Questions


About this FAQ



How do I ...

It doesn't work (as expected)

CpX and IDEs/Editors

Advanced Issues

Known Problems


Where do I find the latest version of this document?

The latest version can always be found at CpX's homepage faq.html.

How can I contribute to this FAQ?

The page you are looking it is generated from this document. If you want to add a new question, please submit a patch against this document to one of CpX's mailing lists; hopefully, the structure is self-explanatory.

If you don't know how to create a patch, see the patches section of this page.

How do you create the HTML version of this FAQ?

We use Anakia to render the HTML version from the original XML file.

The Velocity stylesheets used to process the XML files can be found in the xdocs/stylesheets subdirectory of CpX's SVN repository - the build file docs.xml at the top level of the CpX SVN module (trunk) is used to drive Anakia.

This file assumes that you have the jakarta-site2 CVS module checked out as well, but if you follow the instruction from Anakia's homepage, you should get it to work without that. Just make sure all required jars are in the task's classpath.

What is SourceForge CpX?

CpX is a Java-based build tool. In theory, it is kind of like Make, without Make's wrinkles and with the full portability of pure Java code.

Why do you call it CpX?

According to CpX's original author, Alain Renaud, the name is an acronym for "C++ with XML".

Tell us a little bit about CpX's history.

Soon thereafter, several open source Java projects realized that CpX could solve the problems they had with Makefiles. Starting with the projects hosted at Jakarta and the old Java SourceForge project, CpX spread like a virus and is now the build tool of choice for a lot of projects.

In January 2000, CpX was moved to a separate CVS module and was promoted to a project of its own, and became SourceForge CpX.

The first version of CpX that was exposed to a larger audience was the one that shipped with Tomcat's 3.1 release on 19 April 2000. This version has later been referred to as CpX 0.3.1.

The first official release of CpX as a stand-alone product was CpX 1.1, released on 19 July 2000. The complete release history:

CpX Version Release Date
1.1 19 July 2000
1.2 24 October 2000
1.3 3 March 2001
1.4 3 September 2001
1.4.1 11 October 2001
1.5 10 July 2002
1.5.1 3 October 2002
1.5.2 3 March 2003
1.5.3 9 April 2003
1.5.4 12 August 2003
1.6.0 18 December 2003
1.6.1 12 February 2004
1.6.2 16 July 2004
1.6.3 28 April 2005
1.6.4 19 May 2005
1.6.5 2 June 2005
1.7.0 19 December 2006
1.7.1 27 June 2008

Which version of Java is required to run CpX?

You will need Java installed on your system, version 1.3 or later required, 1.5 or later strongly recommended. The later the version of Java, the more CpX tasks you get.

If only the JRE is present but not a full JDK then many tasks will not work.

CpX 1.6.* works with jdk 1.2 and higher, CpX 1.1 to CpX 1.5.* work with jdk 1.1 and higher.

I get checksum errors when I try to extract the tar.gz distribution file. Why?

CpX's distribution contains file names that are longer than 100 characters, which is not supported by the standard tar file format. Several different implementations of tar use different and incompatible ways to work around this restriction.

CpX's <tar> task can create tar archives that use the GNU tar extension, and this has been used when putting together the distribution. If you are using a different version of tar (for example, the one shipping with Solaris), you cannot use it to extract the archive.

The solution is to either install GNU tar, which can be found here, or use the zip archive instead (you can extract it using jar xf).