List of usage examples for org.apache.commons.jci.compilers CompilationResult CompilationResult
public CompilationResult(final CompilationProblem[] pProblems)
From source file:nl.tue.gale.common.code.JaninoJavaCompiler.java
public CompilationResult compile(final String[] pSourceNames, final ResourceReader pResourceReader, final ResourceStore pStore, final ClassLoader pClassLoader, final JavaCompilerSettings pSettings) { final Map classFilesByName = new HashMap(); final CompilingIClassLoader icl = new CompilingIClassLoader(pResourceReader, classFilesByName, pClassLoader);/*from ww w .j av a2 s .c om*/ for (int i = 0; i < pSourceNames.length; i++) { try { icl.loadIClass( Descriptor.fromClassName(ConversionUtils.convertResourceToClassName(pSourceNames[i]))); } catch (ClassNotFoundException e) { throw new IllegalArgumentException("unable to compile code", e); } } // Store all fully compiled classes for (Iterator i = classFilesByName.entrySet().iterator(); i.hasNext();) { final Map.Entry entry = (Map.Entry) i.next(); final String clazzName = (String) entry.getKey(); pStore.write(ConversionUtils.convertClassToResourcePath(clazzName), (byte[]) entry.getValue()); } final Collection problems = icl.getProblems(); final CompilationProblem[] result = new CompilationProblem[problems.size()]; problems.toArray(result); return new CompilationResult(result); }
From source file:org.auroraide.server.jci.compilers.Jsr199JavaCompiler.java
public CompilationResult compile(final String[] pResourcePaths, final ResourceReader pReader, final ResourceStore pStore, final ClassLoader classLoader, JavaCompilerSettings settings) { final Collection<JavaFileObject> units = new ArrayList<JavaFileObject>(); for (int i = 0; i < pResourcePaths.length; i++) { final String sourcePath = pResourcePaths[i]; log.debug("compiling " + sourcePath); final String source = pResourcePaths[i]; if (pReader.isAvailable(source)) units.add(new CompilationUnit(sourcePath, pReader)); }/*from w ww .j av a2s.c om*/ final JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); final JavaFileManager fileManager = new JciJavaFileManager(units, pStore); final DiagnosticCollector<JavaFileObject> diagnostics = new DiagnosticCollector<JavaFileObject>(); // final JavaFileManager fileManager1 = // compiler.getStandardFileManager(null,null,null); System.getProperties(); compiler.getTask(null, fileManager, diagnostics, options, null, units).call(); try { fileManager.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } final List<Diagnostic<? extends JavaFileObject>> jsrProblems = diagnostics.getDiagnostics(); final CompilationProblem[] problems = new CompilationProblem[jsrProblems.size()]; int i = 0; for (final Diagnostic<? extends JavaFileObject> jsrProblem : jsrProblems) { problems[i++] = new Jsr199CompilationProblem(jsrProblem); if (problemHandler != null) { problemHandler.handle(problems[i - 1]); } } return new CompilationResult(problems); }