CommonTokenStream tokens = new CommonTokenStream(lex);
JavaParser g = new JavaParser(tokens);
try {
// parse
File f = g.run().result;
f.setFileName(file);
if(g.failed()) {
throw new CompilerException("Error parsing file.");
}
// always compile imports
for(String importName : f.getImports()) {
parseClass(importName);
}
// compile Java
{