CJAN

Last updated

CJAN is an acronym standing for Comprehensive Java Archive Network. CJAN as a concept is an extension of CPAN, the Comprehensive Perl Archive Network. In 2004 the CJAN project has ceased development.

Contents

Apache CJAN

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

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.

CJAN.org

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 so the developers were spending time creating the components and then trying to persuade the appropriate developer community to adopt the component and take over its management. The distributed architecture was a problem, too. CJAN was attempting 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 some initial discussions with Brian and Michael and then the Apache community they 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 was launched. [2]

Ostensibly, CJAN.org failed because it was too ambitious – trying to build an open-source project on leading-edge technology. 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 features are good enough for most Java developers most of the time that developers rarely cite the need for such.

See also

Related Research Articles

The Comprehensive Perl Archive Network (CPAN) is a repository of over 250,000 software modules and accompanying documentation for 39,000 distributions, written in the Perl programming language by over 12,000 contributors. CPAN can denote either the archive network or the Perl program that acts as an interface to the network and as an automated software installer. Most software on CPAN is free and open source software.

Jini, also called Apache River, is a network architecture for the construction of distributed systems in the form of modular co-operating services. JavaSpaces is a part of the Jini.

<span class="mw-page-title-main">NetBeans</span> Integrated development environment software for software development

NetBeans is an integrated development environment (IDE) for Java. NetBeans allows applications to be developed from a set of modular software components called modules. NetBeans runs on Windows, macOS, Linux and Solaris. In addition to Java development, it has extensions for other languages like PHP, C, C++, HTML5, and JavaScript. Applications based on NetBeans, including the NetBeans IDE, can be extended by third party developers.

Jakarta Faces, formerly Jakarta Server Faces and JavaServer Faces (JSF) is a Java specification for building component-based user interfaces for web applications and was formalized as a standard through the Java Community Process being part of the Java Platform, Enterprise Edition. It is also an MVC web framework that simplifies the construction of user interfaces (UI) for server-based applications by using reusable UI components in a page.

The PHP Extension and Application Repository, or PEAR, is a repository of PHP software code. Stig S. Bakken founded the PEAR project in 1999 to promote the re-use of code that performs common functions. The project seeks to provide a structured library of code, maintain a system for distributing code and for managing code packages, and promote a standard coding style. Though community-driven, the PEAR project has a PEAR Group which serves as the governing body and takes care of administrative tasks. Each PEAR code package comprises an independent project under the PEAR umbrella. It has its own development team, versioning-control and documentation.

Free Java implementations are software projects that implement Oracle's Java technologies and are distributed under free software licences, making them free software. Sun released most of its Java source code as free software in May 2007, so it can now almost be considered a free Java implementation. Java implementations include compilers, runtimes, class libraries, etc. Advocates of free and open source software refer to free or open source Java virtual machine software as free runtimes or free Java runtimes.

Apache Harmony is a retired open source, free Java implementation, developed by the Apache Software Foundation. It was announced in early May 2005 and on October 25, 2006, the board of directors voted to make Apache Harmony a top-level project. The Harmony project achieved 99% completeness for J2SE 5.0, and 97% for Java SE 6. The Android operating system has historically been a major user of Harmony, although since Android Nougat it increasingly relies on OpenJDK libraries.

In computing, a solution stack or software stack is a set of software subsystems or components needed to create a complete platform such that no additional software is needed to support applications. Applications are said to "run on" or "run on top of" the resulting platform.

<span class="mw-page-title-main">Request Tracker</span> Open source ticket-tracking software

Request Tracker, commonly abbreviated to RT, is a ticket-tracking software written in Perl used to coordinate tasks and manage requests among an online community of users. RT's first release in 1996 was written by Jesse Vincent, who later formed Best Practical Solutions LLC to distribute, develop, and support the package. RT is open source (FOSS) and distributed under the GNU General Public License.

<span class="mw-page-title-main">LAMP (software bundle)</span> Acronym for a common web hosting solution

LAMP is an acronym denoting one of the most common software stacks for many of the web's most popular applications. However, LAMP now refers to a generic software stack model and its components are largely interchangeable.

<span class="mw-page-title-main">Catalyst (software)</span>

Catalyst is an open source web application framework written in Perl, that closely follows the model–view–controller (MVC) architecture, and supports a number of experimental web patterns. It is written using Moose, a modern object system for Perl. Its design is heavily inspired by frameworks such as Ruby on Rails, Maypole, and Spring.

A Technology Compatibility Kit (TCK) is a suite of tests that at least nominally checks a particular alleged implementation of a Java Specification Request (JSR) for compliance. It is one of the three required pieces for a ratified JSR in the Java Community Process, which are:

OpenJDK is a free and open-source implementation of the Java Platform, Standard Edition. It is the result of an effort Sun Microsystems began in 2006. The implementation is licensed under the GPL-2.0-only with a linking exception. Were it not for the GPL linking exception, components that linked to the Java Class Library would be subject to the terms of the GPL license. OpenJDK is the official reference implementation of Java SE since version 7.

Apache Gump is an open source continuous integration system, which aims to build and test all the open source Java projects, every night. Its aim is to make sure that all the projects are compatible, at both the API level and in terms of functionality matching specifications. It is hosted at gump.apache.org, and runs every night on the official Sun JVM.

A software repository, or repo for short, is a storage location for software packages. Often a table of contents is also stored, along with metadata. A software repository is typically managed by source or version control, or repository managers. Package managers allow automatically installing and updating repositories, sometimes called "packages".

<span class="mw-page-title-main">Brian Aker</span> American open-source hacker

Brian Aker, born August 4, 1972 in Lexington, Kentucky, US, is an open-source hacker who has worked on various Apache modules, the Slash system, and numerous storage engines for the MySQL database. Aker was Director of Architecture at MySQL AB until it was acquired by Sun Microsystems. He led Sun's web scaling research group, where he worked on the Drizzle database project. He later became a Distinguished Engineer for Sun Microsystems. After leaving Sun when Oracle acquired it, he became the CTO of Data Differential and provided support to open source projects such as libmemcached, Gearman and the Drizzle database project. Aker is currently a Fellow and VP at Hewlett Packard Enterprise.

Perl Archive Toolkit (PAR) is a cross-platform packaging and deployment tool for computer applications and libraries written in the Perl programming language. Its name is inspired by Java's JAR technology. It was originally developed by Audrey Tang and is now maintained via the PAR development mailing list with help from numerous contributors.

The following outline is provided as an overview of and topical guide to the Perl programming language:

Apache Attic is a project of Apache Software Foundation to provide processes to make it clear when an Apache project has reached its end-of-life. The Attic project was created in November 2008. Also the retired projects can be retained.

References

  1. CJAN Project Summary on SF.Net
  2. Press release: SUN MICROSYSTEMS UNVEILS JAVA.NET