FACTOID # 162: You are more likely to be reported as having been killed by lightning in Cuba than in any other country.
 
 Home   Encyclopedia   Statistics   Countries A-Z   Flags   Maps   Education   Forum   FAQ   About 
 
WHAT'S NEW
RECENT ARTICLES
More Recent Articles »
 

SEARCH ALL

FACTS & STATISTICS    Advanced view

Search encyclopedia, statistics and forums:

 

 

(* = Graphable)

 

 


Encyclopedia > GNU Classpath
GNU Classpath

Demonstration of the GNU Classpath Swing
Developer: GNU project
(formally owned by FSF)
Latest release: 0.93 / December 11, 2006
OS: Cross-platform
Use: Library
License: GPL+linking exception
Website: http://www.classpath.org

GNU Classpath is a project aiming to create a free implementation of the standard class library for the Java programming language. It is a part of the Free Software Foundation's GNU project. Despite the massive size of the library to be created, the majority of the task is already done, including Swing, CORBA, and other major parts. The Classpath developers have implemented almost all of the classes from J2SE 1.4 and 5.0, and Classpath can thus be used to run popular Java-based software such as Azureus and Eclipse. Image File history File links GNU_classpath_logo. ... Image File history File links Download high resolution version (929x619, 147 KB) Summary Licensing File links The following pages link to this file: GNU Classpath ... Example Swing widgets in Java 5. ... Software development is the translation of a user need or marketing goal into a software product. ... GNU (pronounced ) is a computer operating system - consisting of a kernel, libraries, system utilities, compilers, and end-user application software - composed entirely of free software. ... The Free Software Foundation (FSF) is a non-profit corporation founded in October 1985 by Richard Stallman to support the free software movement (free as in freedom), and in particular the GNU project. ... A software release refers to the creation and availability of a new version of a computer software product. ... December 11 is the 345th day (346th in leap years) of the year in the Gregorian calendar. ... For the Manfred Mann album, see 2006 (album). ... An operating system (OS) is a set of computer programs that manage the hardware and software resources of a computer. ... A cross-platform (or platform independent) programming language, software application or hardware device works on more than one system platform (e. ... Illustration of an application which may use libvorbisfile. ... A software license is a legal agreement which may take the form of a proprietary or gratuitous license as well as a memorandum of contract between a producer and a user of computer software. ... The GNU logo The GNU General Public License (GNU GPL or simply GPL) is a widely-used free software license, originally written by Richard Stallman for the GNU project. ... Some free software projects, notably GNU Classpath, distribute code under the terms of the GNU GPL but with the following clarification and special exception: Linking this library statically or dynamically with other modules is making a combined work based on this library. ... A website (or Web site) is a collection of web pages, images, videos and other digital assets and hosted on a particular domain or subdomain on the World Wide Web. ... This article is about free software as defined by the sociopolitical free software movement; for information on software distributed without charge, see freeware. ... Java is an object-oriented programming language developed by Sun Microsystems in the early 1990s. ... The Free Software Foundation (FSF) is a non-profit corporation founded in October 1985 by Richard Stallman to support the free software movement (free as in freedom), and in particular the GNU project. ... GNU (pronounced ) is a computer operating system - consisting of a kernel, libraries, system utilities, compilers, and end-user application software - composed entirely of free software. ... Example Swing widgets in Java 5. ... In computing, Common Object Request Broker Architecture (CORBA) is a standard for software componentry, created and controlled by the Object Management Group (OMG). ... Azureus is a Java-based BitTorrent client, with support for I2P and Tor anonymous communication protocols. ... Eclipse is an open source platform-independent software framework for delivering what the project calls rich-client applications, as opposed to thin client browser-based applications. ...


GNU Classpath was developed in parallel with libgcj due to license incompatibilities. Finally they agreed on GPL with linking exception and both projects were merged. The GNU Compiler for Java (GCJ) is a compiler for the Java programming language that is part of the GNU Compiler Collection (GCC). ...

Contents

License

GNU Classpath is licensed under the GPL with linking exception. This is a free software licence. All code is formally owned by the Free Software Foundation, and this owner is bound by its own official obligations to developers. The GNU logo The GNU General Public License (GNU GPL or simply GPL) is a widely-used free software license, originally written by Richard Stallman for the GNU project. ... Some free software projects, notably GNU Classpath, distribute code under the terms of the GNU GPL but with the following clarification and special exception: Linking this library statically or dynamically with other modules is making a combined work based on this library. ... This article is about Free Software as defined by the sociopolitical Free Software movement; for information on software distributed without charge, see freeware. ... The Free Software Foundation (FSF) is a non-profit corporation founded in October 1985 by Richard Stallman to support the free software movement (free as in freedom), and in particular the GNU project. ...


Uses

GNU Classpath is used by many free Java runtimes (like Kaffe, SableVM, JamVM, CACAO, Jikes RVM) because every full-featured Java virtual machine must provide an implementation of the standard class libraries. Free Java implementations are software projects that reimplement Suns Java technologies and are distributed under free software licences, thus making them free software / open source software. ... Kaffe is a clean room design of a Java Virtual Machine. ... SableVM is a clean room implementation of Java bytecode interpreter implementing the Java virtual machine specification, second edition. ... JamVM [1] is an open-source Java virtual machine developed to be extremely small compared with other VMs while conforming to the Java virtual machine specification version 2 (blue book). ... Binomial name Theobroma cacao L. Cacao (Theobroma cacao) is a small (4–8 m tall) evergreen tree in the family Sterculiaceae (alternatively Malvaceae), native to tropical Mexico, but now cultivated throughout the tropics. ... Jikes RVM is an open-source Java virtual machine and research project in IBM to create it. ...


Some other uses include:

  • the GNU Compiler for Java, which is capable of compiling Java code into native standalone executables.
  • IKVM.NET, which integrates Java with the .NET Framework
  • JNode operating system for running java applications. This system is written in Java and assembler only.
  • specialised virtual machines such as Jaos for integration with the Oberon programming language, and JamaicaVM for embedded systems with real-time guarantees.
  • virtual machines for the distributed computing with clusters, having up to 128 processors on Myrinet ([1]).

The GNU Compiler for Java (GCJ) is a free software compiler for the Java programming language that is part of the GNU Compiler Collection. ... IKVM.NET is an open-source Java virtual machine for Microsoft . ... This article or section does not adequately cite its references or sources. ... JNode (Java New Operating System Design Effort) is an open-source project to create a Java platform operating system. ... Jaos (Java on Active Object System) is an open-source Java virtual machine on top of the Bluebottle System, a kernel using active objects and Oberon programming language. ... Oberon is a reflective programming language created in the late 1980s by Professor Niklaus Wirth (creator of the Pascal, Modula, and Modula-2 programming languages) and his associates at ETHZ in Switzerland. ... Myrinet, ANSI/VITA 26-1998, is a high-speed local area networking system designed by Myricom to be used as an interconnect between multiple machines to form computer clusters. ...

History

GNU Classpath development started in 1998 with five developers. During the history, it merged several times with other projects having similar goals (Kaffe, libgcj). In the past, GNU Classpath supplied its own virtual machine (Japhar). As Classpath was becoming a base library, shared with a lot of different projects, this virtual machine received less and less attention and is now no longer supported. After implementing the majority of the official Java 1.4 API, the work in the project became more bug oriented rather than API coverage oriented. In October 24, 2006, the implementation of the last missing 1.4 class, HTMLWriter, was committed. The development speed (computed mathematically as the average number of the new lines of code per day) reached its highest ever in 2006. Kaffe is a clean room design of a Java Virtual Machine. ...


Development team

The project team consists of about 70 developers (with approximately 20 currently active) and one active maintainer. The maintainer takes care of the legal side of the project, prepares the regular project releases and does some quality management. The maintainer also grants the CVS access permissions. The Concurrent Versions System (CVS), also known as the Concurrent Versioning System is an open-source version control system invented and developed by Dick Grune in the 1980s. ...


Unlike some projects, GNU Classpath has no formal hierarchy. The work is done by the most technically capable, and there is no strict work division either. All code changes are first posted to the discussion list as patches where they can be opposed if needed. The project typically receives between five and eight patches per day.


The project has its own testing suite (Mauve) with about 175.000 tests and performs daily checks to ensure that the project classes are compatible with the official Sun API classes. Mauve is a project to provide a free test suite for the Javaâ„¢ class libraries. ...


Virtual machine integration

GNU Classpath contains classes from the official java API namespace. Where calls to the native code are necessary or highly desired, this is done from the small number of "VM" classes. The name of such class matches the name of the class, requiring native methods plus the additional VM prefix: VMObject, VMString and so on. VM classes, stored separately from the rest of code, are package private and final. The methods of these classes contain the keyword native, indicating the necessity of the supporting library. Such library is provided by the authors of the java virtual machine. Hence GNU Classpath can be connected to near any java virtual machine if the sources of such machine are available and can be modified. For instance, it cannot be used with Sun's virtual machine that does not yet satisfy these conditions. Sun Microsystems, Inc. ...


Support for the new language features in Java 1.5

Each GNU Classpath release currently consists of two separate release tarballs; one that represents the state of the main development branch and another that contains the contents of a more experimental branch, supporting the additions, such as generics, enumerations and annotations, present in Java 1.5.


The eventual aim is to merge this branch back into the main development stream, thus giving mainstream GNU Classpath full support for the new features. Such a merge is reliant on appropriate support being available from the VMs and compilers that work with GNU Classpath. At present, this is expected to happen when changes to GCJ taking place on the gcj-eclipse branch become part of an actual available release of GCJ. The branch allows GCJ to use Eclipse compiler, ecj, to compile Java 1.5 source code to bytecode, which is then changed into native code by GCJ itself.


Classes from the omg.org domain

GNU Classpath does not accept any code that has the non free license, or was automatically generated from the another code with the non free license. The standard java API contains numerous classes from the omg.org domain that are normally generated from the IDL files, released by the Object Management Group. The "use, but no modify" license of these files counts as non free. Because of this reason, the mentioned classes in GNU Classpath project were written by hand, using only the official printed OMG specifications. Hence this part of GNU Classpath is as free as any other code in the project. This implementation is functional. Wikipedia does not yet have an article with this exact name. ... Object Management Group (OMG) is a consortium, originally aimed at setting standards for distributed object-oriented systems, and is now focused on modeling (programs, systems and business processes) and model-based standards in some 20 vertical markets. ...


See also

Free software Portal

Image File history File links Portal. ... Apache Harmony is an open source implementation of Java, starting with Java SE 5. ... The GNU Compiler for Java (GCJ) is a compiler for the Java programming language that is part of the GNU Compiler Collection (GCC). ... IKVM.NET is an open-source Java virtual machine for Microsoft . ... JamVM [1] is an open-source Java virtual machine developed to be extremely small compared with other VMs while conforming to the Java virtual machine specification version 2 (blue book). ... JikesRVM (Research Virtual Machine) is an open source virtual machine from IBM. Its official site is http://jikesrvm. ... Kaffe is a clean room design of a Java Virtual Machine. ... Free Java implementations are software projects that reimplement Suns Java technologies and are distributed under free software licences, thus making them free software / open source software. ...

External links


  Results from FactBites:
 
GNU Classpath - Wikipedia, the free encyclopedia (492 words)
GNU Classpath is a project aiming to create a free implementation of the standard class library for the Java programming language.
GNU Classpath is used by many free Java runtimes (like Kaffe, SableVM, JamVM, IKVM.NET, CACAO, Jikes RVM and GCJ) because every full-featured Java Virtual Machine must provide an implementation of the standard class libraries.
GNU Classpath was used in the systems what compile java code into standalone executables, in systems, what support java under.NET, in operating systems with the type safe kernels, in multiprocessor clusters, containing up till 128 CPU's, in smart cards and other embedded systems with the real time guarantees and in mobile applications.
GNU Compiler for Java - Wikipedia, the free encyclopedia (374 words)
The GNU Compiler for Java (GCJ) is a free software compiler for the Java programming language that is part of the GNU Compiler Collection (GCC).
Almost all of the runtime libraries used by GCJ come from the GNU Classpath project.
The Compiled Native Interface (CNI) is a software framework for the GNU GCJ compiler which allows Java code to call and be called by native applications (programs specific to a hardware and operating system platform) and libraries written in C++.
  More results at FactBites »


 

COMMENTARY     


Share your thoughts, questions and commentary here
Your name
Your comments
Please enter the 5-letter protection code

Want to know more?
Search encyclopedia, statistics and forums:

 


Lesson Plans | Student Area | Student FAQ | Reviews | Press Releases |  Feeds | Contact
The Wikipedia article included on this page is licensed under the GFDL.
Images may be subject to relevant owners' copyright.
All other elements are (c) copyright NationMaster.com 2003-5. All Rights Reserved.
Usage implies agreement with terms.