The Wayback Machine - https://web.archive.org/all/20050512005800/http://www.netbeans.org:80/community/sources/
HOME > Community > Sources

The Sources


The NetBeans source code is be available under a variant of the Mozilla Public License.

The source code is available in a CVS repository. All development of NetBeans happens using the CVS server on this site, and development proposals and decisions happen on the public mailing lists.

You can get to the sources in several ways.

If you are interested in making a build from sources, see the building/installation pages.

So what exactly is here?


What is available here is the entire source tree and history of the NetBeans IDE. Generally, there is a "stable" branch and a "development branch." The development branch is where ongoing development happens - it will be more or less stable depending on what point in the release cycle it is.

For a a description of the physical organization of the sources in the CVS repository, see the CVS Branches and Labels doc.

Is what's here the complete source? Is there anything that isn't here?


There are some things that can't be here for legal reasons. There are a few parts of the NetBeans IDE that are third party software, or fall under a license that doesn't allow their sources to be made public here.

Any such extras required for a working build are available via CVS and included in the source snapshots in a "scrambled" format. To use these scrambled extras (for eg to make a build from sources), it is necessary to accept their license terms - you will be prompted to do so during the build process. For more info, see the Scrambler description.

The items in question are:

  • The Java Parser and Internal Compiler - The parser is a wrapper around the JDK 1.4 compiler. The internal compiler is related code. The JDK sources fall under a more restrictive license, so it can't be open-sourced here. In principle an alternate open-source parser could be implemented, and the internal compiler omitted or reimplemented, but either of these would constitute a major development effort.

  • XML Parsers (Xerces, Crimson, Xalan, DOM, SAX, JAXP, ...) - used throughout the IDE for XML parsing and manipulation. http://java.sun.com/xml/

  • JavaHelp Runtime library 1.x - the IDE uses JavaHelp to display online documentation. The extra binaries distribution may also include the JavaHelp development-time library to rebuild search databases. http://java.sun.com/products/javahelp/index.html

  • Dynamic Java - bundled Java-VM-based interpreter for use in the Scripting feature. http://www-sop.inria.fr/koala/djava/

  • Jython - another interpreter for scripting. http://www.jython.org/

  • BeanShell - yet another interpreter. http://www.beanshell.org/

A given release of NetBeans may have more or fewer non-SPL-licensed extra files in it. Ask on nbdev to be sure.

Contributing


See the getting involved page.