当前位置: 首页 > news >正文

【Groovy】Groovy环境搭建

1 前言

​ Groovy 是一种基于 JVM 平台的敏捷且动态的编程语言,能与 Java 无缝集成。该语言由 James Stracham 和 Bob McWhirter 于 2003 年启动开发,在 2007 年 1 月发布第一个版本。

​ Groovy 具有以下优势。

  • 简洁优雅的语法:Groovy 的语法比 Java 更加简洁,省略了繁琐的代码结构,例如分号、类型声明等,让开发者更专注于业务逻辑的实现。
  • 动态类型:Groovy 是动态类型语言,无需显式声明变量类型,编译器会在运行时自动推断类型,提高了代码的灵活性和开发效率。
  • 强大的闭包支持:闭包是 Groovy 的一大特色,它可以将代码块作为参数传递,简化了代码结构,提升了代码的可读性和可维护性。
  • 与 Java 无缝集成:Groovy 与 Java 完全兼容,可以直接使用 Java 类库,也可以将 Groovy 代码编译成 Java 字节码,运行在 JVM 上。
  • 丰富的生态系统:Groovy 拥有丰富的生态系统,包括 Grails 框架、Gradle 构建工具等,为各种应用场景提供了强大的支持。

​ Groovy 相关资料如下。

  • Groovy 官网:https://groovy-lang.org/
  • Groovy 官方文档:https://groovy-lang.org/documentation.html
  • groovy-sdk 下载:https://groovy.apache.org/download.html
  • Groovy GitHub:https://github.com/apache/groovy

2 搭建 Groovy 环境

1)配置环境变量

​ 下载 groovy-sdk:apache-groovy-sdk-4.0.25.zip,放在路径中无空格的英文目录下(笔者放在【D:\Android\Groovy】目录下),解压后,在【系统 → 系统信息 → 高级系统设置 → 环境变量 → 系统变量 → Path】中配置环境变量,将以下路径添加到 Path 中。

D:\Android\Groovy\groovy-4.0.25\bin

​ 配置完环境变量后,在 cmd 窗口输入 groovy -version、groovyc -version,如果正确打印 groovy 版本号,说明环境变量配置成功,如下。

img

2)编译 Groovy 代码

​ 使用记事本编写以下代码,并保存为 Test.groovy 文件。

println("Hello world!")

​ 使用以下命令可以编译 Groovy 代码为字节码,生成 Test.class 文件。

groovyc Test.groovy

​ 使用以下命令运行程序。

groovy Test.groovy

img

3)Groovy Console

​ 在【 groovy-sdk/bin】目录下,双击 groovyConsole.bat 文件(笔者路径如下),即可打开 Groovy 控制台。

D:\Android\Groovy\groovy-4.0.25\bin\groovyConsole.bat

​ Groovy 控制台页面如下,在控制台中可以编写代码,点击【Script / Run】(或按快捷键 Ctrl + R)即可运行代码。按快捷键【Ctrl + Shift + L】和【Ctrl + Shift + S】分别可以放大和缩小工作区界面。

img

​ 在 Android Studio 中,可以点击【Tools / Groovy Console】打开 Groovy 控制台,页面如下。

img

3 脚本执行原理

​ Groovy 是面向对象编程语言,对于以下脚本,Groovy 会将其封装到一个类中。

println("Hello World")

​ 如下,Groovy 会生成 Main 类继承 Script,并将脚本的主体复制到 run 方法中,在 main 方法中执行 run 方法。

import org.codehaus.groovy.runtime.InvokerHelperclass Main extends Script {def run() {println("Hello World")}static void main(String[] args) {InvokerHelper.runScript(Main, args)}
}

4 拓展

4.1 Java 文件改后缀名为 Groovy 文件

​ 编写以下 Java 代码,文件名为 Test.java,使用 java Test.java 命令可以运行代码。

public class Test {public static void main(String[] args) {System.out.println("Hello World!");}
}

​ 如果将文件后缀名由 java 改为 groovy,使用 groovy Test.groovy 命令仍然可以运行代码,如下,由此也说明 Groovy 兼容 Java。

img

4.2 Groovy 简化 java.lang.process

​ 假设本地安装了 Git,现在想在代码中执行 “git help”,java 的写法如下。

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;public class ExecuteProcess {public static void main(String[] args) {try {Process process = Runtime.getRuntime().exec("git help");BufferedReader bf = new BufferedReader(new InputStreamReader(process.getInputStream()));String line;while((line = bf.readLine()) != null) {System.out.println(line);}} catch (IOException e) {e.printStackTrace();}}
}

​ Groovy 中的实现如下,可以看到 Groovy 扩展了 JDK,极大简化了代码。

println "git help".execute().text

​ 声明:本文转自【Groovy】Groovy环境搭建。

http://www.jsqmd.com/news/7016/

相关文章:

  • 2025年TAB拉链制造商权威推荐榜:创新设计与耐用品质口碑
  • VMware Cloud Foundation 9.0.1.0 发布 - 领先的多云平台
  • velero 备份及使用方法
  • CT5132 Program. Tools for AI:-week4 note
  • Fluttercon EU 2025 :Let‘s go far with Flutter - 详解
  • 洛谷月赛T1 P14081 「CZOI-R7」炸弹游戏
  • io的异步处理io_uring,实现io_uring_tcp_server - 详解
  • Claude Code V2集成KAT-Coder
  • Ceph 分布式存储学习笔记(一):介绍、部署与集群设置(上)
  • VMware Aria Suite Lifecycle 8.18 Patch 5 发布,新增功能概览
  • P3977 [TJOI2015] 棋盘题解
  • VMware Aria Operations 8.18.5 发布,新增功能概览
  • Windows 作为 Ansible 节点的完整部署流程(含 Docker 部署 Ansible) - 实践
  • 软工
  • 10.1考试T4(swap)题解
  • 如何在windows10的子系统(wsl)中安装php开发环境 - 教程
  • 20251001 之所思 - 人生如梦
  • 优必选 —— 人形机器人 —— 二次开发
  • GNS3环境下静态路由配置实例与分析(管理距离、度量值) - 教程
  • 实用指南:自动驾驶中的传感器技术55——USS(1)
  • 市场交易反心理特征之三:日内假反转
  • 网页端如何 打开百度高德腾讯地图导航
  • 完整教程:Coze源码分析-资源库-编辑插件-后端源码-IDL/API/应用服务层
  • Linux 中awk命令如何统计每行指定字符出现的次数
  • 实用指南:音频类AI工具扩展
  • 什么就是云原生之CNCF
  • 常系数齐次微分方程
  • 关于子集的枚举与高维前缀和
  • 原来的OJ怎么没了?
  • 【Linux】库的链接与加载 - 详解