An explanation of the key aspects to the place and purpose of nb-javac.
What is nb-javac?
"nb-javac" consists of two libraries that provide a NetBeans-specific fork of the Java JDK Java compiler, and is explicitly excluded by Oracle from the NetBeans code donation to Apache.
Where is nb-javac found in the NetBeans sources?
In the "java" cluster, see: Overview: NetBeans Structure
What does nb-javac do that's different to vanilla javac?
A few years back, the NetBeans team wrote a page describing what nb-javac does in addition to/differently to vanilla javac:
http://wiki.netbeans.org/JavacDiff
Looking at the page now, some of the things listed above are not part of nb-javac anymore (e.g., cancelling and some part of the error recovery paragraph) but it still gives a reasonable overview and is good to get an idea what kinds of things nb-javac does.