configuration.setTargetDirectory(targetDir);
protected void setUp() throws Exception { File dir = new File("target/test-generated-classes"); dir.mkdirs(); Map options = new HashMap(); options.put("stubDir", dir); CompilerConfiguration configuration = new CompilerConfiguration(); configuration.setTargetDirectory(dir); configuration.setVerbose(dumpClass); configuration.setJointCompilationOptions(options); compiler = new FileSystemCompiler(configuration); }
protected void setUp() throws Exception { File dir = new File("target/test-generated-classes"); dir.mkdirs(); CompilerConfiguration config = new CompilerConfiguration(); config.setTargetDirectory(dir); config.setDebug(dumpClass); compiler = new Compiler(config); }
if (text != null) setTargetDirectory(text);
setTargetDirectory((File) null); setClasspath(""); setVerbose(false); setTargetDirectory(target);
config.setTargetDirectory(destdir);
setWarningLevel(configuration.getWarningLevel()); setOutput(configuration.getOutput()); setTargetDirectory(configuration.getTargetDirectory()); setClasspathList(new LinkedList<String>(configuration.getClasspath())); setVerbose(configuration.getVerbose()); setDefaultScriptExtension(configuration.getDefaultScriptExtension()); setSourceEncoding(configuration.getSourceEncoding()); setTargetDirectory(configuration.getTargetDirectory()); Map<String, Object> jointCompilationOptions = configuration.getJointCompilationOptions(); if (jointCompilationOptions != null) {
init.setTargetDirectory(initTDFile); init.setDefaultScriptExtension(".jpp");
init.setTargetDirectory(initTDFile);
CompilerConfiguration createCompilerConfiguration() { final CompilerConfiguration configuration = GroovyScript.createCompilerConfiguration(); final File compiledScriptsDir = ScriptResources.getCompiledScriptsDir(); compiledScriptsDir.mkdirs(); configuration.setTargetDirectory(compiledScriptsDir); Map<String, Object> jointOptions = new HashMap<>(); configuration.setJointCompilationOptions(jointOptions); return configuration; }
/** * Creates a new instance of GroovyWorkspaceCompiler. * * @param targetDirectory the directory in which to put generated files * @param workspaceRoot the directory to compile * @param changedFilesRoot the directory in which to temporarily store incrementally changed files * @return the newly created GroovyWorkspaceCompiler */ @SuppressFBWarnings("PT_FINAL_TYPE_RETURN") public static GroovyWorkspaceCompiler of(Path targetDirectory, Path workspaceRoot, Path changedFilesRoot) { checkNotNull(targetDirectory, "targetDirectory must not be null"); checkNotNull(workspaceRoot, "workspaceRoot must not be null"); checkNotNull(changedFilesRoot, "changedFilesRoot must not be null"); checkArgument(targetDirectory.toFile().isDirectory(), "targetDirectory must be a directory"); checkArgument(workspaceRoot.toFile().isDirectory(), "workspaceRoot must be a directory"); checkArgument(changedFilesRoot.toFile().isDirectory(), "changedFilesRoot must be a directory"); CompilerConfiguration config = new CompilerConfiguration(); config.setTargetDirectory(targetDirectory.toFile()); GroovyWorkspaceCompiler workspaceCompiler = new GroovyWorkspaceCompiler(workspaceRoot, changedFilesRoot, config); workspaceCompiler.addAllSourcesToCompilationUnit(); return workspaceCompiler; }
public static CompilerConfiguration generateCompilerConfigurationFromOptions(CommandLine cli) { // // Setup the configuration data CompilerConfiguration configuration = new CompilerConfiguration(); if (cli.hasOption("classpath")) { configuration.setClasspath(cli.getOptionValue("classpath")); } if (cli.hasOption('d')) { configuration.setTargetDirectory(cli.getOptionValue('d')); } if (cli.hasOption("encoding")) { configuration.setSourceEncoding(cli.getOptionValue("encoding")); } // joint compilation parameters if (cli.hasOption('j')) { Map compilerOptions = new HashMap(); String[] opts = cli.getOptionValues("J"); compilerOptions.put("namedValues", opts); opts = cli.getOptionValues("F"); compilerOptions.put("flags", opts); configuration.setJointCompilationOptions(compilerOptions); } return configuration; }
public static CompilerConfiguration generateCompilerConfigurationFromOptions(CommandLine cli) { // // Setup the configuration data CompilerConfiguration configuration = new CompilerConfiguration(); if (cli.hasOption("classpath")) { configuration.setClasspath(cli.getOptionValue("classpath")); } if (cli.hasOption('d')) { configuration.setTargetDirectory(cli.getOptionValue('d')); } if (cli.hasOption("encoding")) { configuration.setSourceEncoding(cli.getOptionValue("encoding")); } // joint compilation parameters if (cli.hasOption('j')) { Map compilerOptions = new HashMap(); String[] opts = cli.getOptionValues("J"); compilerOptions.put("namedValues", opts); opts = cli.getOptionValues("F"); compilerOptions.put("flags", opts); configuration.setJointCompilationOptions(compilerOptions); } return configuration; }
public static CompilerConfiguration generateCompilerConfigurationFromOptions(CommandLine cli) { // // Setup the configuration data CompilerConfiguration configuration = new CompilerConfiguration(); if (cli.hasOption("classpath")) { configuration.setClasspath(cli.getOptionValue("classpath")); } if (cli.hasOption('d')) { configuration.setTargetDirectory(cli.getOptionValue('d')); } if (cli.hasOption("encoding")) { configuration.setSourceEncoding(cli.getOptionValue("encoding")); } if (cli.hasOption("baseScript")) { configuration.setScriptBaseClass(cli.getOptionValue("baseScript")); } // joint compilation parameters if (cli.hasOption('j')) { Map<String, Object> compilerOptions = new HashMap<String, Object>(); String[] opts = cli.getOptionValues("J"); compilerOptions.put("namedValues", opts); opts = cli.getOptionValues("F"); compilerOptions.put("flags", opts); configuration.setJointCompilationOptions(compilerOptions); } return configuration; }
public static CompilerConfiguration generateCompilerConfigurationFromOptions(CommandLine cli) { // // Setup the configuration data CompilerConfiguration configuration = new CompilerConfiguration(); if (cli.hasOption("classpath")) { configuration.setClasspath(cli.getOptionValue("classpath")); } if (cli.hasOption('d')) { configuration.setTargetDirectory(cli.getOptionValue('d')); } if (cli.hasOption("encoding")) { configuration.setSourceEncoding(cli.getOptionValue("encoding")); } // joint compilation parameters if (cli.hasOption('j')) { Map<String, Object> compilerOptions = new HashMap<String, Object>(); String[] opts = cli.getOptionValues("J"); compilerOptions.put("namedValues", opts); opts = cli.getOptionValues("F"); compilerOptions.put("flags", opts); configuration.setJointCompilationOptions(compilerOptions); } return configuration; }
private GroovyScriptEngine create() { // custom the configuration of the compiler CompilerConfiguration cc = new CompilerConfiguration(); cc.setTargetDirectory(new File(applicationDirectories.getTemporaryDirectory(), "groovy-classes")); cc.setSourceEncoding("UTF-8"); cc.addCompilationCustomizers(secureASTCustomizer()); GroovyClassLoader gcl = new GroovyClassLoader(classLoader, cc); engine = new GroovyScriptEngine(gcl); // HACK: For testing log.info("Created engine: {}", engine); return engine; }
/** * <p>Configures the compiler by building its configuration object.</p> * * @param sourcePath the path to the source directory * @param targetPath the path to the target directory * @param classLoader the class loader to use to determine the classpath * @return the compiler configuration */ protected CompilerConfiguration buildCompilerConfiguration(File sourcePath, File targetPath, ClassLoader classLoader) { CompilerConfiguration configuration = new CompilerConfiguration(); // Set the destination / target directory for the compiled .class files. configuration.setTargetDirectory(targetPath.getAbsoluteFile()); // Specify the classpath of the given class loader. This enables the user to write new Java // "scripts" that depend on classes that have already been loaded previously. Otherwise he // wouldn't be able to use for example classes that are available in a library. configuration.setClasspath(ClassLoaderUtils.buildClasspath(classLoader)); // Enable verbose output. configuration.setVerbose(true); // Generate debugging information. configuration.setDebug(true); return configuration; }
@Override public void compileToDir(ScriptSource source, ClassLoader classLoader, File classesDir, File metadataDir, CompileOperation<?> extractingTransformer, Class<? extends Script> scriptBaseClass, Action<? super ClassNode> verifier) { Timer clock = Time.startTimer(); GFileUtils.deleteDirectory(classesDir); GFileUtils.mkdirs(classesDir); CompilerConfiguration configuration = createBaseCompilerConfiguration(scriptBaseClass); configuration.setTargetDirectory(classesDir); try { compileScript(source, classLoader, configuration, metadataDir, extractingTransformer, verifier); } catch (GradleException e) { GFileUtils.deleteDirectory(classesDir); GFileUtils.deleteDirectory(metadataDir); throw e; } logger.debug("Timing: Writing script to cache at {} took: {}", classesDir.getAbsolutePath(), clock.getElapsed()); }
@Test public void testPrecompileGroovy() throws Exception { MockApplication<File> app = application("plugin.template.simple").init(); ReadFileSystem<File> fs = app.getClasses(); File groovy = fs.getPath("plugin", "template", "simple", "templates", "index_.groovy"); assertNotNull(groovy); CompilerConfiguration config = new CompilerConfiguration(); config.setTargetDirectory(fs.getRoot()); CompilationUnit cu = new CompilationUnit(config); cu.addSource(groovy); cu.compile(); assertTrue(groovy.delete()); MockClient client = app.client(); assertEquals("hello", client.render().assertStringResponse()); } }
@Test public void testPrecompileGroovy() throws Exception { MockApplication<File> app = application("plugin.template.simple").init(); ReadFileSystem<File> fs = app.getClasses(); File groovy = fs.getPath("plugin", "template", "simple", "templates", "index_.groovy"); assertNotNull(groovy); CompilerConfiguration config = new CompilerConfiguration(); config.setTargetDirectory(fs.getRoot()); CompilationUnit cu = new CompilationUnit(config); cu.addSource(groovy); cu.compile(); assertTrue(groovy.delete()); MockClient client = app.client(); assertEquals("hello", client.render().assertStringResponse()); } }