File destinationDir = spec.getDestinationDir();
if (destinationDir != null) {
args.add("-d");
args.add(destinationDir.getPath());
}
CompileOptions compileOptions = spec.getCompileOptions();
if (compileOptions.isVerbose()) {
args.add("-verbose");
}
if (compileOptions.isDeprecation()) {
args.add("-deprecation");
}
if (!compileOptions.isWarnings()) {
args.add("-nowarn");
}
if (compileOptions.isDebug()) {
if (compileOptions.getDebugOptions().getDebugLevel() != null) {
args.add("-g:" + compileOptions.getDebugOptions().getDebugLevel().trim());
} else {
args.add("-g");
}
} else {
args.add("-g:none");
}
if (compileOptions.getEncoding() != null) {
args.add("-encoding");
args.add(compileOptions.getEncoding());
}
if (compileOptions.getBootClasspath() != null) { //TODO: move bootclasspath to platform
args.add("-bootclasspath");
args.add(compileOptions.getBootClasspath());
}
if (compileOptions.getExtensionDirs() != null) {
args.add("-extdirs");
args.add(compileOptions.getExtensionDirs());
}
if (compileOptions.getCompilerArgs() != null) {
args.addAll(compileOptions.getCompilerArgs());
}
}