The Java builder builds Java programs using its own compiler (the Eclipse Compiler for Java)
      that implements the Java Language Specification.  The Java builder can build programs
      incrementally as individual Java files are saved. Note that the Eclipse Compiler for Java can
      also be invoked using Ant as described in the Using the ant javac adapter section.
    
      Problems detected by the compiler are classified as either warnings or errors. The existence
      of a warning does not affect the execution of the program; the code executes as if it were
      written correctly. Compile-time errors (as specified by the Java Language Specification) are
      always reported as errors by the Java compiler. For some other types of problems you can,
      however, specify if you want the Java compiler to report them as warnings, errors or to
      ignore them. To change the default settings, use the 
       Java > Compiler >
      Errors/Warnings preference page.
    
The Java compiler can create CLASS files even in presence of compilation errors. However, in the case of serious errors (for example, references to inconsistent binaries, most likely related to an invalid build path), the Java builder does not produce any CLASS files.