Added attaching external annotations via command-line parameter.

This commit is contained in:
Evgeny Gerashchenko
2012-06-27 23:15:54 +04:00
parent 206628da82
commit 07234c7487
2 changed files with 10 additions and 1 deletions
@@ -37,7 +37,6 @@ import org.jetbrains.jet.utils.PathUtil;
import java.io.File;
import java.io.PrintStream;
import java.util.Collections;
import java.util.List;
import static org.jetbrains.jet.cli.common.ExitCode.*;
@@ -206,6 +205,12 @@ public class K2JVMCompiler extends CLICompiler<K2JVMCompilerArguments, K2JVMComp
List<File> classpath = getClasspath(arguments);
CompileEnvironmentUtil.addToClasspath(configuration.getEnvironment(), Iterables.toArray(classpath, File.class));
}
if (arguments.annotations != null) {
for (String root : Splitter.on(File.pathSeparatorChar).split(arguments.annotations)) {
JetCoreEnvironment.addExternalAnnotationsRoot(PathUtil.jarFileOrDirectoryToVirtualFile(new File(root)));
}
}
}
@NotNull
@@ -103,6 +103,10 @@ public class JetCoreEnvironment extends JavaCoreEnvironment {
JetStandardLibrary.initialize(getProject());
}
public static void addExternalAnnotationsRoot(@NotNull VirtualFile root) {
((CoreAnnotationsProvider) ExternalAnnotationsProvider.getInstance()).addExternalAnnotationsRoot(root);
}
public MockApplication getApplication() {
return myApplication;
}