70 {"-option", "name1:name2"},
71 {"-option", "3"},
72 {"option1", "-J-version", "option2"},
73 {"option1", "-J-version", "-J-XshowSettings:vm", "option2"},};
74
75 static void init() throws IOException {
76
77 // A tool which simulates com.sun.tools.javac.Main argument processing,
78 // intercepts options passed via the javac launcher.
79 final String mainJava = "Main" + JAVA_FILE_EXT;
80 List<String> contents = new ArrayList<>();
81 contents.add("package com.sun.tools.javac;");
82 contents.add("public class Main {");
83 contents.add(" public static void main(String... args) {\n");
84 contents.add(" for (String x : args) {\n");
85 contents.add(" if(x.compareTo(\" \")!=0)\n");
86 contents.add(" System.out.println(x);\n");
87 contents.add(" }\n");
88 contents.add(" }\n");
89 contents.add("}\n");
90 createFile(new File(mainJava), contents);
91
92 // compile Main.java into directory to override classes in jdk.compiler
93 new File("jdk.compiler").mkdir();
94 compile("-Xmodule:jdk.compiler", "-d", "jdk.compiler", mainJava);
95 }
96
97 static void pass(String msg) {
98 System.out.println("pass: " + msg);
99 }
100
101 static void errout(String msg) {
102 System.err.println(msg);
103 }
104
105 // Return position of -J option or -1 is does not contain a -J option.
106 static int indexOfJoption(String[] opts) {
107 for (int i = 0; i < opts.length; i++) {
108 if (opts[i].startsWith("-J")) {
109 return i;
110 }
111 }
112 return -1;
113 }
114
|
70 {"-option", "name1:name2"},
71 {"-option", "3"},
72 {"option1", "-J-version", "option2"},
73 {"option1", "-J-version", "-J-XshowSettings:vm", "option2"},};
74
75 static void init() throws IOException {
76
77 // A tool which simulates com.sun.tools.javac.Main argument processing,
78 // intercepts options passed via the javac launcher.
79 final String mainJava = "Main" + JAVA_FILE_EXT;
80 List<String> contents = new ArrayList<>();
81 contents.add("package com.sun.tools.javac;");
82 contents.add("public class Main {");
83 contents.add(" public static void main(String... args) {\n");
84 contents.add(" for (String x : args) {\n");
85 contents.add(" if(x.compareTo(\" \")!=0)\n");
86 contents.add(" System.out.println(x);\n");
87 contents.add(" }\n");
88 contents.add(" }\n");
89 contents.add("}\n");
90 String mainJavaPath = "patch-src/com/sun/tools/javac/" + mainJava;
91 File mainJavaFile = new File(mainJavaPath.replace('/', File.separatorChar));
92 mainJavaFile.getParentFile().mkdirs();
93 createFile(mainJavaFile, contents);
94
95 // compile Main.java into directory to override classes in jdk.compiler
96 new File("jdk.compiler").mkdir();
97 compile("--patch-module", "jdk.compiler=patch-src",
98 "-d", "jdk.compiler",
99 mainJavaFile.toString());
100 }
101
102 static void pass(String msg) {
103 System.out.println("pass: " + msg);
104 }
105
106 static void errout(String msg) {
107 System.err.println(msg);
108 }
109
110 // Return position of -J option or -1 is does not contain a -J option.
111 static int indexOfJoption(String[] opts) {
112 for (int i = 0; i < opts.length; i++) {
113 if (opts[i].startsWith("-J")) {
114 return i;
115 }
116 }
117 return -1;
118 }
119
|