Apache NetBeans is an open source development environment, tooling platform, and application framework.
- GitHub actions
- Apache Jenkins:
- License Status ( Apache Rat and ant verify-libs-and-licenses )
- Git
- Ant 1.9.9 or above
- JDK 11 or above (to build and run NetBeans)
- NetBeans license violation checks are managed via the rat-exclusions.txt file.
- Set JAVA_HOME and ANT_HOME appropriately or leave them undefined.
Build the default release
config (See the cluster.config property.)
$ ant build
Build the basic project (mainly Java features):
$ ant -Dcluster.config=basic build
Build the full project (may include clusters which are not be in the release):
$ ant -Dcluster.config=full build
Build the NetBeans Platform:
$ ant -Dcluster.config=platform build
Cleanup:
$ ant -q clean
- You can also use
php
,enterprise
, etc. See the cluster.properties file. - Once built, you can simply open individual modules of interest with NetBeans and run/rebuild/debug them like any other project
- Building the gradle modules on recent JDKs might fail with "Unsupported class file major version" errors. In that case the gradle daemon must be
configured to run on a compatible JDK (for example add
org.gradle.java.home=/home/duke/jdk17
to your~/.gradle/gradle.properties
, see gradle doc).
Build javadoc:
$ ant build javadoc
Note Run javadoc-nb
task in Netbeans to run the javadoc build and display it in a web browser.
Run the build:
$ ant tryme
Note: Look in nbbuild/netbeans for the NetBeans installation created by the build process.
Subscribe or mail the users@netbeans.apache.org list - Ask questions, find answers, and also help other users.
Subscribe or mail the dev@netbeans.apache.org list - Join development discussions, propose new ideas and connect with contributors.
Developer builds can be downloaded: Latest build (netbeans-xxx.zip).
Latest release (convenience binary of released source artifacts): https://netbeans.apache.org/download/index.html.
- start config (JVM settings, default JDK, userdir, cachedir location and more):
netbeans/etc/netbeans.conf
- user settings storage (preferences, installed plugins, logs):
system dependent, seeHelp -> About
for concrete location - cache files (maven index, search index etc):
system dependent, seeHelp -> About
for concrete location - default log location (tip: can be inspected via
View -> IDE Log
):
$DEFAULT_USERDIR_ROOT/var/log/messages.log
Note: removing/changing the user settings directory will reset NetBeans to first launch defaults
The origins of the code in this repository are older than its Apache existence. As such significant part of the history (before the code was donated to Apache) is kept in an independent repository. To fully understand the code you may want to merge the modern and ancient versions together:
$ git clone https://github.com/apache/netbeans.git
$ cd netbeans
$ git log platform/uihandler/arch.xml
This gives you just few log entries including the initial checkin and change of the file headers to Apache. But then the magic comes:
$ git remote add emilian https://github.com/emilianbold/netbeans-releases.git
$ git fetch emilian # this takes a while, the history is huge!
$ git replace 6daa72c98 32042637 # the 1st donation
$ git replace 6035076ee 32042637 # the 2nd donation
When you search the log, or use the blame tool, the full history is available:
$ git log platform/uihandler/arch.xml
$ git blame platform/uihandler/arch.xml
Many thanks to Emilian Bold who converted the ancient history to his Git repository and made the magic possible!