Groovy学习笔记一 安装及配置Groovy环境

1.下载
我下载的是最新版本的Groovy 2.4.0-rc-1,地址为: http://dl.bintray.com/groovy/maven/groovy-binary-2.4.0-rc-1.zip
2.安装
将下载的groovy-binary-2.4.0-rc-1.zip解压,然后配置环境变量
我使用的是windows,在环境变量中增加GROOVY_HOME=解压后的groovy-binary-2.4.0-rc-1.zip所在文件夹,比如E:\DevTools\groovy-2.4.0-rc-1
然后在PATH变量中增加% GROOVY_HOME%/bin;当然JAVA_HOME等java相关的环境变量也是需要提前配置的。
3.运行
打开命令行,运行groovy -version,此时,出现了如下错误:
C:\>groovy -version
java.lang.SecurityException: Prohibited package name: java.lang
        at java.lang.ClassLoader.preDefineClass(ClassLoader.java:650)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:786)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
        at org.codehaus.groovy.tools.RootLoader.oldFindClass(RootLoader.java:172)
        at org.codehaus.groovy.tools.RootLoader.loadClass(RootLoader.java:144)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:792)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
        at org.codehaus.groovy.tools.RootLoader.oldFindClass(RootLoader.java:172)
        at org.codehaus.groovy.tools.RootLoader.loadClass(RootLoader.java:144)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at org.codehaus.groovy.tools.GroovyStarter.rootLoader(GroovyStarter.java:96)
        at org.codehaus.groovy.tools.GroovyStarter.main(GroovyStarter.java:128)
参照 https://jira.codehaus.org/browse/GROOVY-1386中的解决办法,修改 groovy-2.4.0-rc-1/bin/startGroovy.bat,将92行修改为if exist "%JAVA_HOME%\lib\tools.jar" set TOOLS_JAR="",保存,重新运行,异常依旧。
多次尝试后,发现是环境变量中配置了CLASSPATH导致的,去掉该环境变量之后,运行groovy -version,输出
Groovy Version: 2.4.0-rc-1 JVM: 1.7.0_40 Vendor: Oracle Corporation OS: Windows 7
证明安装成功。
4.运行Groovy Console
打开bin目录,运行groovyConsole.bat即可打开 Groovy Console,可以在这里编写,运行groovy代码
编写println "hello world",点击Script->Run,或者使用Ctrl+R,则可以运行并得到如下图所示的输出