/** * creates a GroovyClassLoader. * * @param parent the parent class loader * @param config the compiler configuration * @param useConfigurationClasspath determines if the configurations classpath should be added */ public GroovyClassLoader(ClassLoader parent, CompilerConfiguration config, boolean useConfigurationClasspath) { super(EMPTY_URL_ARRAY, parent); if (config == null) config = CompilerConfiguration.DEFAULT; this.config = config; if (useConfigurationClasspath) { for (String path : config.getClasspath()) { this.addClasspath(path); } } initSourceEncoding(config); }
List<String> paths = new ArrayList<String>(config.getClasspath()); ClassLoader cl = parentClassLoader; while (cl != null) {
private GroovyClassLoader createGroovyClassLoaderWithExpectations(CompilerConfiguration configuration) { Mock mockGroovyClassLoader = mock(GroovyClassLoader.class); for (Iterator iterator = configuration.getClasspath().iterator(); iterator.hasNext();) { mockGroovyClassLoader.expects(once()).method("addClasspath").with(eq(iterator.next())); } return (GroovyClassLoader) mockGroovyClassLoader.proxy(); } }
setOutput(configuration.getOutput()); setTargetDirectory(configuration.getTargetDirectory()); setClasspathList(new LinkedList<String>(configuration.getClasspath())); setVerbose(configuration.getVerbose()); setDebug(configuration.getDebug());
public void testSetViaSystemProperties() { System.setProperty("groovy.warnings", "PaRaNoiA"); System.setProperty("groovy.output.verbose", "trUE"); System.setProperty("groovy.recompile.minimumInterval", "867892345"); assertEquals("PaRaNoiA", System.getProperty("groovy.warnings")); final CompilerConfiguration config = new CompilerConfiguration(System.getProperties()); assertEquals(WarningMessage.PARANOIA, config.getWarningLevel()); assertEquals(false, config.getDebug()); assertEquals(true, config.getVerbose()); assertEquals(10, config.getTolerance()); assertEquals(867892345, config.getMinimumRecompilationInterval()); assertNull(config.getScriptBaseClass()); assertEquals(getSystemEncoding(), config.getSourceEncoding()); assertEquals(getVMVersion(), config.getTargetBytecode()); assertEquals(false, config.getRecompileGroovySource()); { final List listCP = config.getClasspath(); assertNotNull(listCP); assertEquals(0, listCP.size()); } assertNotNull(config.getOutput()); assertNull(config.getTargetDirectory()); assertEquals(".groovy", config.getDefaultScriptExtension()); assertNull(config.getJointCompilationOptions()); assertNotNull(config.getPluginFactory()); }
public void testDefaultConstructor() { final CompilerConfiguration config = CompilerConfiguration.DEFAULT; assertEquals(WarningMessage.LIKELY_ERRORS, config.getWarningLevel()); assertEquals(Boolean.getBoolean("groovy.output.debug"), config.getDebug()); assertEquals(Boolean.getBoolean("groovy.output.verbose"), config.getVerbose()); assertEquals(false, config.getDebug()); assertEquals(false, config.getVerbose()); assertEquals(10, config.getTolerance()); assertEquals(100, config.getMinimumRecompilationInterval()); assertNull(config.getScriptBaseClass()); assertEquals(getSystemEncoding(), config.getSourceEncoding()); assertEquals(getVMVersion(), config.getTargetBytecode()); assertEquals(false, config.getRecompileGroovySource()); { final List listCP = config.getClasspath(); assertNotNull(listCP); assertEquals(0, listCP.size()); } assertNotNull(config.getOutput()); assertNull(config.getTargetDirectory()); assertEquals(".groovy", config.getDefaultScriptExtension()); assertNull(config.getJointCompilationOptions()); assertNotNull(config.getPluginFactory()); }
assertEquals(true, init.getRecompileGroovySource()); final List listCP = init.getClasspath(); assertEquals("File1", listCP.get(0)); assertEquals("Somewhere", listCP.get(1)); assertEquals(true, config.getRecompileGroovySource()); final List listCP = config.getClasspath(); assertEquals("File1", listCP.get(0)); assertEquals("Somewhere", listCP.get(1));
assertEquals(false, init.getRecompileGroovySource()); final List listCP = init.getClasspath(); assertNotNull(listCP); assertEquals(0, listCP.size()); assertEquals(false, config.getRecompileGroovySource()); final List listCP = config.getClasspath(); assertEquals(0, listCP.size());
private static void setupClassPath(final CompilerConfiguration config) { final List<String> classPath = config.getClasspath(); final String javaClassPath = StandardSystemProperty.JAVA_CLASS_PATH.value(); if (!isNullOrEmpty(javaClassPath)) { StringTokenizer tokenizer = new StringTokenizer(javaClassPath, File.pathSeparator); while (tokenizer.hasMoreTokens()) classPath.add(tokenizer.nextToken()); } }
/** * creates a GroovyClassLaoder. * * @param parent the parent class loader * @param config the compiler configuration * @param useConfigurationClasspath determines if the configurations classpath should be added */ public GroovyClassLoader(ClassLoader parent, CompilerConfiguration config, boolean useConfigurationClasspath) { super(new URL[0], parent); if (config == null) config = CompilerConfiguration.DEFAULT; this.config = config; if (useConfigurationClasspath) { for (Iterator it = config.getClasspath().iterator(); it.hasNext();) { String path = (String) it.next(); this.addClasspath(path); } } }
/** * creates a GroovyClassLaoder. * * @param parent the parent class loader * @param config the compiler configuration * @param useConfigurationClasspath determines if the configurations classpath should be added */ public GroovyClassLoader(ClassLoader parent, CompilerConfiguration config, boolean useConfigurationClasspath) { super(new URL[0], parent); if (config == null) config = CompilerConfiguration.DEFAULT; this.config = config; if (useConfigurationClasspath) { for (Iterator it = config.getClasspath().iterator(); it.hasNext();) { String path = (String) it.next(); this.addClasspath(path); } } }
/** * creates a GroovyClassLoader. * * @param parent the parent class loader * @param config the compiler configuration * @param useConfigurationClasspath determines if the configurations classpath should be added */ public GroovyClassLoader(ClassLoader parent, CompilerConfiguration config, boolean useConfigurationClasspath) { super(new URL[0], parent); if (config == null) config = CompilerConfiguration.DEFAULT; this.config = config; if (useConfigurationClasspath) { for (String path : config.getClasspath()) { this.addClasspath(path); } } }
/** * creates a GroovyClassLaoder. * * @param parent the parent class loader * @param config the compiler configuration * @param useConfigurationClasspath determines if the configurations classpath should be added */ public GroovyClassLoader(ClassLoader parent, CompilerConfiguration config, boolean useConfigurationClasspath) { super(new URL[0], parent); if (config == null) config = CompilerConfiguration.DEFAULT; this.config = config; if (useConfigurationClasspath) { for (Iterator it = config.getClasspath().iterator(); it.hasNext();) { String path = (String) it.next(); this.addClasspath(path); } } }
AntClassLoader antLoader = (AntClassLoader) parent; String[] pathElm = antLoader.getClasspath().split(File.pathSeparator); List classpath = configuration.getClasspath();
AntClassLoader antLoader = (AntClassLoader) parent; String[] pathElm = antLoader.getClasspath().split(File.pathSeparator); List classpath = configuration.getClasspath();
protected GroovyClassLoader buildClassLoaderFor() { ClassLoader parent = this.getClass().getClassLoader(); if (parent instanceof AntClassLoader) { AntClassLoader antLoader = (AntClassLoader) parent; String[] pathElm = antLoader.getClasspath().split(File.pathSeparator); List<String> classpath = configuration.getClasspath(); /* * Iterate over the classpath provided to groovyc, and add any missing path * entries to the AntClassLoader. This is a workaround, since for some reason * 'directory' classpath entries were not added to the AntClassLoader' classpath. */ for (String cpEntry : classpath) { boolean found = false; for (String path : pathElm) { if (cpEntry.equals(path)) { found = true; break; } } /* * fix for GROOVY-2284 * seems like AntClassLoader doesn't check if the file * may not exist in the classpath yet */ if (!found && new File(cpEntry).exists()) antLoader.addPathElement(cpEntry); } } return new GroovyClassLoader(parent, configuration); }
AntClassLoader antLoader = (AntClassLoader) parent; String[] pathElm = antLoader.getClasspath().split(File.pathSeparator); List<String> classpath = configuration.getClasspath();
setOutput(configuration.getOutput()); setTargetDirectory(configuration.getTargetDirectory()); setClasspathList(new LinkedList(configuration.getClasspath())); setVerbose(configuration.getVerbose()); setDebug(configuration.getDebug());
setOutput(configuration.getOutput()); setTargetDirectory(configuration.getTargetDirectory()); setClasspathList(new LinkedList<String>(configuration.getClasspath())); setVerbose(configuration.getVerbose()); setDebug(configuration.getDebug());
setOutput(configuration.getOutput()); setTargetDirectory(configuration.getTargetDirectory()); setClasspathList(new LinkedList(configuration.getClasspath())); setVerbose(configuration.getVerbose()); setDebug(configuration.getDebug());