void compileBatch(String []files, boolean isMake)
    throws ClassNotFoundException
  {
    try {
      JavaCompilerUtil compiler = JavaCompilerUtil.create(getClassLoader());
      compiler.setClassDir(_classDir);
      compiler.setSourceDir(_sourceDir);
      if (_encoding != null)
        compiler.setEncoding(_encoding);
      compiler.setArgs(_args);
      compiler.setCompileParent(! isMake);
      compiler.setSourceExtension(_sourceExt);
      if (_compiler != null)
        compiler.setCompiler(_compiler);

      //LineMap lineMap = new LineMap(javaFile.getNativePath());
      // The context path is obvious from the browser url
      //lineMap.add(name.replace('.', '/') + _sourceExt, 1, 1);
          
      compiler.compileBatch(files);
    } catch (Exception e) {
      getClassLoader().addDependency(AlwaysModified.create());

      // Compile errors are wrapped in a special ClassNotFound class
      // so the server can give a nice error message
      throw new CompileClassNotFound(e);
    }
  }
void compileBatch ( String [ ] files , boolean isMake ) throws ClassNotFoundException { try { JavaCompilerUtil compiler = JavaCompilerUtil . create ( getClassLoader ( ) ) ; compiler . setClassDir ( _classDir ) ; compiler . setSourceDir ( _sourceDir ) ; if ( _encoding != null ) compiler . setEncoding ( _encoding ) ; compiler . setArgs ( _args ) ; compiler . setCompileParent ( ! isMake ) ; compiler . setSourceExtension ( _sourceExt ) ; if ( _compiler != null ) compiler . setCompiler ( _compiler ) ; compiler . compileBatch ( files ) ; } catch ( Exception e ) { getClassLoader ( ) . addDependency ( AlwaysModified . create ( ) ) ; throw new CompileClassNotFound ( e ) ; } }
Compile the Java source.  Compile errors are encapsulated in a
ClassNotFound wrapper.