CJAN is an acronym that stands for Comprehensive Java Archive Network. CJAN as a concept is an extension of CPAN, the Comprehensive Perl Archive Network. In 2004, the CJAN project ceased development.
Apache CJAN was an attempt at a simple web service for serving Java Jar files. It was started some time prior to May 2001. It was abandoned in favour of the more promising Apache JJAR project.
Apache JJAR is an experimental distributed repository and toolset to navigate and fetch from the repository. While it met its initial goals and found a couple of niche uses, it never went mainstream due to lack of interest from fellow developers. Although the project is no longer featured on Apache.org's main pages and is essentially abandoned, this experimental project is still hosted on their servers.
Started in November 2001 by Brian Tol, [1] CJAN.org set out to become for the Java community what CPAN represented to the Perl community – a comprehensive archive of reusable components for their respective programming languages.
Two key differences between CPAN and CJAN were that Java uses modules known as Jar files and that CJAN was to use a distributed network topology (the later would ensure that CJAN would scale well with increased numbers of users and keep server hosting costs to an absolute minimum). The decision was taken to code CJAN from scratch in Java.
At the beginning of 2002, Michael Davey started working with Brian on the specifications and a prototype. CJAN.org was managed as an Open Source project, a hobby they worked on in their spare time.
Progress was slow, in part because some of the basic building blocks needed to implement CJAN simply didn't exist in open-source form in Java at that time. As a result, CJAN developers had to spend additional time creating the components and trying to persuade the appropriate developer community to adopt each component and take over its management. The distributed architecture was a problem, too. CJAN attempted to use the JXTA framework when it was in its infancy and only offered very fine-grained, low-level control of the framework.
Sun Microsystems became interested in CJAN at the beginning of 2003. After initial discussions with Brian and Michael and with the Apache community, Sun Microsystems sought the opinion of the wider Java community and teamed up with Collab.Net and O'Reilly Publishing. On 11 June 2003, the Java.net community and website were launched. [2]
Ostensibly, CJAN.org failed because it was too ambitious – trying to build an open-source project on cutting-edge technology was a difficult task. The final straw for the open-source project was the launch of the high-profile Java.Net website. Although to this day Java.Net does not offer a catalogue of reusable components, it has a huge community, and the website's features are sufficient for most Java developers who rarely need reusable components.