用Java编写Groovy脚本,然后用命令行执行该脚本

news2024/12/28 20:10:52

1、Groovy 语言简介

  • Groovy 是 Apache 旗下的一门基于 JVM 平台的动态/敏捷编程语言
  • Groovy 可以与 Java 语言无缝对接,在写 Groovy 的时候如果忘记了语法可以直接按Java的语法继续写,也可以在 Java 中调用 Groovy 脚本,都可以很好的工作
  • Groovy 也并不会替代 Java,而是相辅相成、互补的关系,具体使用哪门语言这取决于要解决的问题和使用的场景

注:Groovy语言的设计上它吸纳了 Python、Ruby 和 Smalltalk 语言的优秀特性,语法非常简练和优美,开发效率也非常高(编程语言的开发效率和性能是相互矛盾的,越高级的编程语言性能越差,因为意味着更多底层的封装,不过开发效率会更高,需结合使用场景做取舍)

Android Studio中的build.gradle就是用Groovy脚本编写的。

2、用 Java 编写一个 Groovy 脚本

  • 新建一个.txt文件,然后将.txt后缀改为.groovy。如test.groovy
  • test.groovy的内容,如下:
class SuperClass {
    String getName() {
        return "super"
    }
}


class SubClass extends SuperClass {
    String getName() {
        return "Sub"
    }
}



String printHello(SuperClass superClass) {
    return "Hello " + superClass.getName()
}

String printHello(SubClass subClass) {
    return "Hello " + subClass.getName()
}


static void main(args) {
    SuperClass superClass = new SubClass()
    String res = printHello(superClass)
    println "输出结果:$res"
}

3、利用 cmd 命令行执行 Groovy 脚本

  • 在 test.groovy所在文件夹调起 cmd 命令行
  • 输入命令,如下:
groovy test.groovy
  • 执行结果,如下图:

在这里插入图片描述

4、Windows 命令行执行 Groovy 所需配置

  • 配置 Gradle 环境变量
  • 配置 Groovy 环境变量

4.1、配置 Gradle 环境变量

(1)选择需要的版本下载

Gradle官网下载地址:https://gradle.org/releases/
在这里插入图片描述

(2)解压文件

在这里插入图片描述

在这里插入图片描述

(3)配置环境变量

在path中添加 Gradle 的路径
在这里插入图片描述

4.2、配置 Groovy 环境变量

(1)选择需要的版本下载

Groovy官网下载地址:https://groovy.apache.org/download.html

在这里插入图片描述

(2)解压文件

在这里插入图片描述

在这里插入图片描述

(3)配置环境变量

首先新建 GROOVY_HOME

在这里插入图片描述

然后再Path中添加GROOVY_HOME路径

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/701929.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Pytorch常用的函数(三)深度学习中常见的卷积操作详细总结

Pytorch常用的函数(三)深度学习中常见的卷积操作 1、标准卷积(Standard Convolution) 1.1 标准卷积的理解 我们直接来看二维卷积,这在实际应用中是最常见的。 上图中Conv 2D其实就是卷积核,也叫做滤波器。滤波器的值决定了输出的情况,模型…

【Java】Java核心 86:Git 教程(9)GIT远程仓库操作

文章目录 14.GIT远程仓库操作-关联、拉取、推送、克隆目标内容小结 Git提供了一系列命令来进行远程仓库的操作。 下面是一些常用的Git远程仓库操作&#xff1a; 克隆远程仓库到本地&#xff1a; git clone <远程仓库URL>查看远程仓库信息&#xff1a; git remote -v添…

功能键F4在Microsoft Excel中有什么用

的确,许多 Excel 用户发现使用键盘快捷键对他们来说更有效。事实上,键盘快捷键可能是使用鼠标的最佳选择,因为使用 Excel 时使用触摸屏可能不是视力障碍者的最佳选择。 使用功能键,如 Excel 中的 F4 以及 F2 可能是非常必要的。在这篇文章中,我们将研究功能键 F4 及其在 …

【Java】Java核心 85:Git 教程(8)GIT远程仓库介绍与码云仓库注册创建

文章目录 13.GIT远程仓库介绍与码云仓库注册创建目标小结 Git是一个分布式版本控制系统&#xff0c;它允许多个开发者协同工作并管理代码的版本。远程仓库是存放在网络上的Git仓库&#xff0c;可以用于团队成员之间的代码共享和协作。 常见的远程仓库托管服务提供商有GitHub、…

XShell、XFtp、Linux上MySQL的远程连接及使用

下载资源包&#xff0c;请于文章顶部下载即可 XShell的使用 1. 打开安装好的XShell 2. 点击左上角新建连接 3. 填写相应连接服务器信息 4. 输入需要连接到Linux操作系统哪个用户的用户名 5. 输入连接到用户的密码 6. 远程登录Linux成功 7. 此时可以正常使用Linux指令操作Linu…

chatgpt赋能python:隐藏鼠标:Python实现隐藏鼠标的应用

隐藏鼠标&#xff1a;Python实现隐藏鼠标的应用 作为一名有10年Python编程经验的工程师&#xff0c;我深知Python在图形用户界面(GUI)开发上的优势&#xff0c;其中一个有趣而且有用的应用就是隐藏鼠标。 在某些情况下&#xff0c;用户可能希望隐藏鼠标&#xff0c;这可以用于…

ARM-异常与中断(四)

文章目录 中断中断请求、中断源中断服务程序保存现场、恢复现场中断仲裁、中断优先级中断嵌套 异常广义上的异常同步异常异步异常精确异步异常&#xff08;Precise Asynchronous Exception&#xff09;非精确异步异常&#xff08;Imprecise Asynchronous Exception&#xff09;…

【DBA专属】MHA高可用数据库集群-----------一主一备两从一管理,一个VIP客户端

MHA高可用数据库集群 目录 环境配置&#xff1a; 所有操作系统均为centos 7.x 64bit 1、关闭防火墙&#xff1a;&#xff08;所有服务器&#xff09; 2.配置所有主机名映射&#xff08;所有服务器&#xff09; 3、同步时区 4.安装MHA node及相关perl依赖包&#xff08;所有…

AutoSAR系列讲解(入门篇)4.1-BSW概述

BSW概述 一、什么是BSW 二、BSW的结构 1、微控制器硬件抽象层&#xff08;MCAL&#xff09; 2、ECU抽象层 3、服务层 4、复杂驱动 三、再将结构细分 一、什么是BSW 中文翻译就是基础软件层&#xff08;Basic Software&#xff09;。这个基础软件层实质上就是将整个ECU分…

【斯坦福】FrugalGPT: 如何使用大型语言模型,同时降低成本并提高性能

FrugalGPT: 如何使用大型语言模型&#xff0c;同时降低成本并提高性能 作者&#xff1a;Lingjiao Chen, Matei Zaharia, James Zou 引言 本文介绍了一种新颖的方法&#xff0c;旨在解决使用大型语言模型&#xff08;LLM&#xff09;时面临的成本和性能挑战。随着GPT-4和Chat…

链路聚合综合实战

拓扑 需求 -PC1和PC3属于vlan 10、PC2和PC4属于vlan 20 -设备之间配置lacp模式的链路聚合&#xff0c;并确保同vlan之间的主机可以互通 配置步骤 1&#xff09;PC配置IP地址 2&#xff09;所有交换机创建vlan10 和vlan20 3&#xff09;交换机和PC互联的接口设置为access &am…

python数据分析之连接MySQL数据库并进行数据可视化

大家好&#xff0c;我是带我去滑雪&#xff01; 本期将熟悉MySQL数据库以及管理和操作MySQL数据库的数据库管理工具Navicat Premium&#xff0c;然后在python中调用MySQL数据库进行数据分析和数据可视化。 目录 1、MySQL数据库与数据库管理工具Navicat Premium 2、调用MySQL…

EasyCVR如何实现国标级联无人机推送的RTMP推流通道?

EasyCVR视频融合平台基于云边端一体化架构&#xff0c;可支持多协议、多类型设备接入&#xff0c;包括&#xff1a;NVR、IPC、视频编码器、无人机、车载设备、智能手持终端、移动执法仪等。平台具有强大的数据接入、处理及分发能力&#xff0c;可在复杂的网络环境中&#xff0c…

el-date-picker禁用指定日期之前或之后的日期

一、elementUI中el-date-picker禁用指定日期之前或之后的日期 通过配置picker-options配置指定禁用日期&#xff08;pickerOptions写到data里面&#xff09; <el-date-pickerv-model"date"type"date"size"small"value-format"yyyy-MM-d…

Linux-passwd或shadow删了怎么办?

passwd或者shadow被删除了怎么办 passwd和shadow被删了&#xff0c;可以启用营救模式进行补救&#xff0c;原因是这两个文件都有备份。 先将光驱的自动启动勾选。 将Boot的引导顺序改变下&#xff0c;将光驱引导顺序放到最前面。 选择Troubleshootin可以从名字来知道&#…

广州华锐互动:机电专业VR模拟实操教学平台提供沉浸式的实践操作和训练机会

虚拟现实(VR)技术是一种先进的技术&#xff0c;可以应用于机电专业的培训中。以下是VR技术应用到机电专业培训的一些好处&#xff1a; 模拟实际操作环境&#xff1a;VR技术可以创建一个虚拟的环境&#xff0c;模拟真实的机械和电气设备的操作环境。这使得学生可以在安全的环境…

Python最基础语法

文章目录 一、简介1、Python安全路径2、Python开发工具(PyCharm) 二、PyCharm使用1、新建项目位置2、Hello World3、查看python版本4、PEP8规范 三、标识符和关键字四、基本数据类型1、数据类型2、多数据赋值&#xff1a;3、标准数据类型4、格式化输出5、输入(input)6、格式转换…

电商系统架构设计系列(四):流量大、数据多的「商品详情页系统」该如何设计?

一个电商的商品系统&#xff0c;主要功能就是增删改查商品信息。 上篇文章中&#xff0c;我给你留了一个思考题&#xff1a;流量大、数据多的商品详情页系统该如何设计&#xff1f; 今天这篇文章&#xff0c;主要聊一下&#xff0c;如何设计一个快速、可靠的存储架构支撑商品系…

七、一百零二类花分类项目实战

一、准备数据集 一百零二类花数据集下载 flower_data包括train和valid文件&#xff0c;分别存放102个文件&#xff0c;对应102种类别的花 cat_to_name.json为类别和花品种键值对 将压缩包进行解压&#xff0c;跟项目放到同级路径下 二、导包 若遇到报错&#xff0c;不存…

网络链路聚合

这里写目录标题 链路聚合什么是链路聚合&#xff1f;为什么要进行链路聚合&#xff1f;Linux网卡bonding的7种模式模式一&#xff1a;balance-rr 轮询均衡模式模式二&#xff1a;active-backup 主备策略模式模式三&#xff1a;balance-xor 平衡策略模式四&#xff1a;broadcast…