如何使用groovyc 和 groovy

   开发人员可直接调用Groovy编译器来编译脚本文件,命令为groovyc *.groovy。这个过程将生成一个或多个*.class文件,能被java命令执行(但在执行Groovy生成的 .class文件时,需保证goovy-1.5.x.jar和asm-x.x.jar文件在类路径里)。

   开发人员也可使用命令 groovy *.groovy,一步完成编译和运行Groovy脚本。不用与groovyc命令,groovy命令不会在文件系统而在内存中生成 .class文件并立即执行。

   您或许存在这样的疑问,Groovy如何从不含main方法的脚本中生成可执行的字节码呢。毕竟字节码要运行在JVM中,必须含有可执行的main方法才行。答案是这样的,当编译Groovy脚本时,Groovy编译器会把脚本传到Groovy解释器,解释器负责在内存中生成该脚本的抽象语法树(abstract syntax tree,AST)。然后Groovy编译器会把拥有可执行的main方法的AST编译成Java字节码。最后,通过java命令生成的字节码就会运行。

   编译一个简单的Groovy脚本成Java字节码,并通过逆编译程序便可查看Groovy解释器生成的代码。您不需要理解这些生成的代码,尤其是初学者,但有助于开发人员了解Groovy为实现动态性所作的工作。

参考: http://tglnn.iteye.com/blog/361708

你可能感兴趣的:(java,jvm,脚本,Blog,groovy)