use of javax.tools.JavaCompiler in project error-prone by google.
the class ErrorProneJavaCompilerTest method testRun.
@Test
public void testRun() {
JavaCompiler mockCompiler = mock(JavaCompiler.class);
ErrorProneJavaCompiler compiler = new ErrorProneJavaCompiler(mockCompiler);
InputStream in = mock(InputStream.class);
OutputStream out = mock(OutputStream.class);
OutputStream err = mock(OutputStream.class);
String[] arguments = { "-source", "8", "-target", "8" };
compiler.run(in, out, err, arguments);
verify(mockCompiler).run(in, out, err, arguments);
}
use of javax.tools.JavaCompiler in project j2objc by google.
the class JavacParser method createEnvironment.
// Creates a javac environment from a collection of files and/or file objects.
private JavacEnvironment createEnvironment(List<File> files, List<JavaFileObject> fileObjects, boolean processAnnotations) throws IOException {
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
DiagnosticCollector<JavaFileObject> diagnostics = new DiagnosticCollector<>();
JavacFileManager fileManager = getFileManager(compiler, diagnostics);
List<String> javacOptions = getJavacOptions(processAnnotations);
if (fileObjects == null) {
fileObjects = new ArrayList<>();
}
for (JavaFileObject jfo : fileManager.getJavaFileObjectsFromFiles(files)) {
fileObjects.add(jfo);
}
JavacTaskImpl task = (JavacTaskImpl) compiler.getTask(null, fileManager, diagnostics, javacOptions, null, fileObjects);
return new JavacEnvironment(task, fileManager, diagnostics);
}
use of javax.tools.JavaCompiler in project gradle by gradle.
the class JdkJavaCompiler method createCompileTask.
private JavaCompiler.CompilationTask createCompileTask(JavaCompileSpec spec) {
List<String> options = new JavaCompilerArgumentsBuilder(spec).build();
JavaCompiler compiler = javaHomeBasedJavaCompilerFactory.create();
CompileOptions compileOptions = spec.getCompileOptions();
StandardJavaFileManager fileManager = compiler.getStandardFileManager(null, null, compileOptions.getEncoding() != null ? Charset.forName(compileOptions.getEncoding()) : null);
Iterable<? extends JavaFileObject> compilationUnits = fileManager.getJavaFileObjectsFromFiles(spec.getSource());
return compiler.getTask(null, null, null, options, null, compilationUnits);
}
use of javax.tools.JavaCompiler in project mastering-java by Kingminghuang.
the class Compiler method main.
public static void main(String[] args) {
String source = "public class Main{" + "public static void main(String[] args){System.out.println(\"Hello World!\");}}";
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
StandardJavaFileManager fileManager = compiler.getStandardFileManager(null, null, null);
StringSourceJavaObject sourceObject = new StringSourceJavaObject("Main", source);
JavaCompiler.CompilationTask task = compiler.getTask(null, fileManager, null, null, null, Arrays.asList(sourceObject));
boolean result = task.call();
if (result) {
System.out.println("Compiled successfully");
}
}
use of javax.tools.JavaCompiler in project jdk8u_jdk by JetBrains.
the class JavaToolUtils method compileFiles.
/**
* Takes a list of files and compile these files into the working directory.
*
* @param files
* @throws IOException
*/
public static void compileFiles(List<File> files) throws IOException {
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
try (StandardJavaFileManager fileManager = compiler.getStandardFileManager(null, null, null)) {
Iterable<? extends JavaFileObject> compilationUnit = fileManager.getJavaFileObjectsFromFiles(files);
compiler.getTask(null, fileManager, null, null, null, compilationUnit).call();
}
}
Aggregations