--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/main/Option.java Tue Mar 14 08:19:41 2017 +0100
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/main/Option.java Tue Mar 14 10:51:19 2017 +0100
@@ -399,6 +399,30 @@
}
},
+ DEFAULT_MODULE_FOR_CREATED_FILES("--default-module-for-created-files",
+ "opt.arg.default.module.for.created.files",
+ "opt.default.module.for.created.files", EXTENDED, BASIC) {
+ @Override
+ public void process(OptionHelper helper, String option, String arg) throws InvalidValueException {
+ String prev = helper.get(DEFAULT_MODULE_FOR_CREATED_FILES);
+ if (prev != null) {
+ throw helper.newInvalidValueException("err.option.too.many",
+ DEFAULT_MODULE_FOR_CREATED_FILES.primaryName);
+ } else if (arg.isEmpty()) {
+ throw helper.newInvalidValueException("err.no.value.for.option", option);
+ } else if (getPattern().matcher(arg).matches()) {
+ helper.put(DEFAULT_MODULE_FOR_CREATED_FILES.primaryName, arg);
+ } else {
+ throw helper.newInvalidValueException("err.bad.value.for.option", option, arg);
+ }
+ }
+
+ @Override
+ public Pattern getPattern() {
+ return Pattern.compile("[^,].*");
+ }
+ },
+
X("--help-extra -X", "opt.X", STANDARD, INFO) {
@Override
public void process(OptionHelper helper, String option) throws InvalidValueException {