用Groovy思考 第三章 Groovy开发环境

简介: 版权声明:本文为博主chszs的原创文章,未经博主允许不得转载。 https://blog.csdn.net/chszs/article/details/8763426 用Groovy思考 第三章 Groovy开发环境作者:chszs,转载需注明。
版权声明:本文为博主chszs的原创文章,未经博主允许不得转载。 https://blog.csdn.net/chszs/article/details/8763426

用Groovy思考 第三章 Groovy开发环境

作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs

本章将继续深入Groovy语言,首先学习Groovy脚本,包括从命令行编译和运行Groovy脚本,Groovy Shell,和Groovy Console。

你将学会使用Groovy语言来建立域对象、控制器和服务。而且使用Groovy的方法并非只有一种。另外,对于建立类,可以使用Groovy作为脚本语言。

例1:简单的Groovy脚本Hello.groovy

println "Hello ${args[0]}, may Groovy be with you."

执行以上代码:
PS D:\tmp\groovy> groovy Hello "Li Sir"
Hello Li Sir, may Groovy be with you.

在执行脚本的过程中,Groovy生成了一个与源文件同名的类文件,它包含main方法。

上面的代码如果换用Java来实现,会显得更为冗长。
public class HelloJava {
    public static void main(String[] args) {
        System.out.println( "Hello "+ args[0]+", may Java be with you." );
    }
}

1. 使用脚本函数

同大多数脚本语言那样,可以把Groovy脚本组织成可重用的代码块。这些块被称为函数。下面的例子说明了如何创建并使用一个函数。

def printFullName(firstName, lastName){
println "${firstName} ${lastName}"
}

printFullName('Luke', 'Skywalker')
printFullName('Li', 'Sir')


PS D:\tmp\groovy> groovy .\PrintFullName.groovy
Luke Skywalker
Li Sir

2. 编译Groovy

上面的例子省略了Groovy的编译过程,同Java一样,Groovy脚本也可以编译成字节码文件。如下所示:

PS D:\tmp\groovy> groovyc Hello.groovy

我们会看到目录下生成了一个名为Hello.class的字节码文件。但是,我们不能直接使用Java执行它。要使用Java执行它,需要这么做:

D:\tmp\groovy>java -cp %GROOVY_HOME%/embeddable/groovy-all-2.1.2.jar;. Hello "Li Sir"
Hello LiSir, may Groovy be with you.

可以使用java命令来运行Groovy程序,证明了Groovy就是Java。只需加上groovy-all-<version>.jar到类路径即可。

Groovy编译器是一个联合编译器,它可以同时编译Groovy代码和Java代码。Groovy联合编译器是1.5版本引入的,它来源于JetBrains公司的贡献(发明Intellij IDEA开发环境的公司)。联合编译器允许在单行编译语句中编译Groovy文件和Java文件。

示例:
Name.groovy代码:
public class SayHello{
public static void main(String[] args){
Name name = new Name();
name.setFirstName(args[0]);
System.out.println(name.toString());
}
}

SayHello.java代码:
public class SayHello{
public static void main(String[] args){
Name name = new Name();
name.setFirstName(args[0]);
System.out.println(name.toString());
}
}

联合编译:

D:\tmp>groovyc *.groovy *.java

执行代码:
D:\tmp>java -cp %GROOVY_HOME%/embeddable/groovy-all-2.1.2.jar;. SayHello
"Li Sir"
Hello Li Sir, Java calling Groovy

3. 运行Groovy

可以通过命令行、Groovy Shell、Groovy控制台等运行Groovy脚本和类。

3.1 命令行
在命令行下运行Groovy脚本有几个选择:

(1) 直接在命令行下使用groovy命令。
这种方式下,Groovy会产生一个包含脚本命令的带main()方法的类,编译脚本,并执行它。如果你不想每次运行时重新编译文件,你可以使用第三种选择。

(2) 编译groovy脚本为字节码文件,并使用Java执行。
正如之前的例子。

(3) Windows环境下可以让.groovy扩展名与groovy程序相关联。在Unix环境,使用下面的脚本可以实现同样的目的:
#!/usr/bin/groovy
println "Hello ${args[0]}, may Groovy be with you."

3.2 Groovy Shell

Groovy Shell是一个交互命令行程序,允许开发者创建、运行、保存、载入Groovy脚本和类。要启动Groovy Shell,只需运行groovysh。
D:\tmp\groovy>groovysh
Groovy Shell (2.1.2, JVM: 1.7.0_09)
Type 'help' or '\h' for help.
------------------------------------------------------------
groovy:000> 

在Groovy Shell下键入help,可以学习并使用一些Shell命令,

3.3 Groovy控制台

Groovy控制台是一个带图形界面的Groovy Shell。Groovy控制台使用SwingBuilder开发,使得开发更为方便。


目录
相关文章
【Groovy】Groovy 环境搭建 ( 下载 Groovy | 安装 Groovy | 配置 Groovy 环境变量 )
【Groovy】Groovy 环境搭建 ( 下载 Groovy | 安装 Groovy | 配置 Groovy 环境变量 )
524 0
【Groovy】Groovy 环境搭建 ( 下载 Groovy | 安装 Groovy | 配置 Groovy 环境变量 )
|
9月前
|
Java jenkins 持续交付
01-Groovy-简介及安装
01-Groovy-简介及安装
|
10月前
groovy入门-GString
groovy入门-GString
93 0
|
存储 Java 索引
Groovy入门
Groovy学习路线
385 0
Groovy入门
|
JavaScript 前端开发 Java
第二章 Groovy 基础
Groovy 是基于 JVM 虚拟机的一种动态语言,它的语法和 Java 非常相似,由 Java 入门Groovy,基本上没有任何障碍。Groovy 完全兼容 Java,又在此基础上增加了很多动态类型和灵活的特性,比如支持闭包,支持 DSL,可以说它是一门非常灵活的动态脚本语言。
253 0
第二章 Groovy 基础
《Groovy极简教程》第6章 Groovy与Grails
《Groovy极简教程》第6章 Groovy与Grails
1135 0
《Groovy极简教程》第8章 Groovy:领域特定语言(DSL)
《Groovy极简教程》第8章 Groovy:领域特定语言(DSL)
1276 0
《Groovy极简教程》第5章 SpringBoot集成Groovy与Java混合编程
《Groovy极简教程》第5章 SpringBoot集成Groovy与Java混合编程
1749 0
《Groovy极简教程》第4章 Groovy与Java混合编程
《Groovy极简教程》第4章 Groovy与Java混合编程 Groovy跟Java的不同 http://www.groovy-lang.org/differences.html
1299 0
|
Java 索引
Groovy 快速入门
Groovy是一门基于JVM的动态语言,很多语法和Java类似。大部分Java代码也同时是合法的Groovy代码。本文是快速入门,所以针对语法并不会做非常详细的介绍。
959 0