< prev index next >
test/lib/jdk/test/lib/compiler/Compiler.java
Print this page
*** 19,56 ****
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
import javax.tools.*;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.net.URI;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
! class Compiler {
final private Map<String,String> input;
private List<String> options;
! Compiler(Map<String,String> input) {
this.input = input;
}
! Compiler setRelease(int release) {
// Setting the -release option does not work for some reason
// so do it the old fashioned way
// options = Arrays.asList("-release", String.valueOf(release));
String target = String.valueOf(release);
options = Arrays.asList("-source", target, "-target", target, "-classpath", "");
return this;
}
! Map<String,byte[]> compile() {
List<SourceFileObject> cunits = createCompilationUnits();
Map<String,ClassFileObject> cfos = createClassFileObjects();
JavaCompiler jc = ToolProvider.getSystemJavaCompiler();
JavaFileManager jfm = new CustomFileManager(jc.getStandardFileManager(null, null, null), cfos);
if(!jc.getTask(null, jfm, null, options, null, cunits).call()) {
--- 19,58 ----
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+ package jdk.test.lib.compiler;
+
import javax.tools.*;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.net.URI;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
! public class Compiler {
final private Map<String,String> input;
private List<String> options;
! public Compiler(Map<String,String> input) {
this.input = input;
}
! public Compiler setRelease(int release) {
// Setting the -release option does not work for some reason
// so do it the old fashioned way
// options = Arrays.asList("-release", String.valueOf(release));
String target = String.valueOf(release);
options = Arrays.asList("-source", target, "-target", target, "-classpath", "");
return this;
}
! public Map<String,byte[]> compile() {
List<SourceFileObject> cunits = createCompilationUnits();
Map<String,ClassFileObject> cfos = createClassFileObjects();
JavaCompiler jc = ToolProvider.getSystemJavaCompiler();
JavaFileManager jfm = new CustomFileManager(jc.getStandardFileManager(null, null, null), cfos);
if(!jc.getTask(null, jfm, null, options, null, cunits).call()) {
< prev index next >