Groovy程序设计第一章起步——介绍安装和各种集成开发工具

获取Groovy

Groovy主页:http://www.groovy-lang.org/
Groovy语言实现的最新预发布版本:https://github.com/apache/groovyhttps://github.com/apache/groovy

安装Groovy的前提条件

需要JDK1.5或更高版本。

在Windows系统环境安装Groovy

设置GROOVY_HOME环境变量和路径。
%GROOVY_HOME%\bin添加到Path环境变量中,以此把Groovy的bin目录加入到查找路径中。
确认环境变量JAVA_HOME指向的是Java开发包(Java Development Kit,JDK)的位置。

记得关闭所有打开的命令行窗口,因为对环境变量的修改需要重启命令行窗口才会生效。在新的命令行窗口中,输入groovy -v,确保报告的是正确的版本。

在类Unix系统环境安装Groovy

解压下载的二进制发布包。
设置GROOVY_HOME环境变量与路径。根据所用Shell的不同,需要编辑不同的配置文件。

在OS X上需要编辑的是~/.bash_profile文件。在这个文件中,添加了一项:export GROOVY_HOME="/opt/groovy/groovy-2.6.0",以此设置环境变量GROOVY_HOME
$GROOVY_HOME/bin添加到了PATH环境变量中。
确认环境变量JAVA_HOME指向的是JDK目录所在位置;如果不是,请设置。

ls -l`which java`

这条命令可以帮助确定Java的安装位置。

管理多个版本的Groovy

GVM(Groovy enVironment Manager)不仅可以管理Groovy语言的版本,还可以管理与Groovy相关的库和工具(如Grails、Griffon和Gradle等)的版本。
支持各种*nix系统,在Windows系统环境也可以通过Cygwin支持。

gvm list groovy查看到可用的和已安装的Groovy语言版本。
gvm install groovy 2.1.1:会下载并安装该版本,以供使用。
gvm use groovy 2.1.1:切换到2.1.1版本

使用groovysh

groovysh是以交互方式尝试一些小型Groovy代码例子的好工具。它也可以用于在编码过程中实验一些代码。然而需要注意的是,groovysh有些特殊之处。如果在使用该命令时遇到问题,可以使用save命令把代码保存到一个文件中,然后尝试使用groovy命令从命令行运行,以避免任何与工具有关的问题。
一按下回车键,groovysh命令就会编译并执行输入完的语句,打印代码执行过程中的所有输出,并打印这条语句的执行结果。

当输入一个类、一个方法,甚至一个if语句时,groovysh会等完成输入再执行那段代码。groovy:提示符后面的数字提示已经累积的要执行代码的行数。

如果不太确定要输入的命令,可以输入所知道的尽可能多的字符,然后按Tab键。shell会打印以输入的部分名字打头的可用方法。

使用完毕,输入exit退出该工具。

使用groovyConsole


要执行代码,Windows系统用户按Ctrl+R或Ctrl+Enter组合键,Mac系统用户则按Command+R或Command+Enter组合键。

在命令行中运行Groovy

Test.groovy:



运行结果:

要在命令行中直接尝试一些语句,请使用-e选项:

输入不包含在任何类中的一些可执行代码,或者是一个带有static main(String[] args)方法(即传统的Java main()方法)的类。

如果类扩展了GroovyTestCase类,或者实现了Runnable接口,可以跳过main()方法。在这些情况下,如果main()方法仍然出现了,则被优先执行。

使用IDE

集成开发环境(Integrated Development Environment,IDE)

IntelliJ IDEA

通过IntelliJ IDEA,可以编辑Groovy代码,使用代码补全,获得对Groovy生成器的支持,利用语法和错误高亮,使用代码格式化与检查,联合编译Java和Groovy代码,重构与调试Java和Groovy代码,以及在同一项目中使用Java和Groovy代码。

Eclipse Groovy插件

TextMate Groovy Bundle

Mac的程序员是在TextMate中使用Groovy Bundle。(Windows用户可以看一下E Text Editor。)
TextMate提供了一些可以节省时间的脚本片段,支持将一些代码展开为标准的Groovy代码,比如闭包。

Sublime Text

要在Sublime Text内运行Groovy代码,需要一个构建脚本。如果Tools > Build System菜单下没有,只要选择New Build System...菜单项创建一个名为groovy.sublime-build.json的文件,并在该文件中写入以下命令:

按ctrl+b来运行文件。

快速编辑、编码和运行测试

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 160,026评论 4 364
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,655评论 1 296
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,726评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,204评论 0 213
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,558评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,731评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,944评论 2 314
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,698评论 0 203
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,438评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,633评论 2 247
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,125评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,444评论 3 255
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,137评论 3 238
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,103评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,888评论 0 197
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,772评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,669评论 2 271

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,103评论 18 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 170,574评论 25 707
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 46,368评论 6 343
  • 童年记忆 /南倚闲坐 今天 是鬼节 不知怎得 突然间想起 一件很久的事 我的童年记忆中 很深刻的一件事儿 是关于一...
    南倚闲坐阅读 119评论 0 0
  • 我恨这 妖魔鬼怪 为祸人间 我更恨自己 偷生在角落 懦弱给谁看 于是 我的田园 我的花果山 沦陷 这个黑夜 我要呐...
    遇见Luck阅读 942评论 12 31