gradle学习笔记

开发环境

操作系统:macOS Catalina
端终软件:iTerm
IDE: IntelliJ IDEA

学习路径

gradle是基于groovy脚本语言的,所以在学习gradle之前还得先学习一个groovy的基础。JVM与groovy、java code的关系可以简单理解为,groovy与java代码都会编译为java字节码,然后在JVM上运行。groovy就像python一样,是一种动态脚本语言。还有就是groovy代码中可以直接调用java代码,可以直接引入与使用jar
在这里插入图片描述

groovy

groovy环境安装

选择sdkman来安装并管理groovy的版本,为什么选择sdkman?

Java all the way down
Install Software Development Kits for the JVM such as Java, Groovy, Scala, Kotlin and Ceylon. Ant, Gradle, Grails, Maven, SBT, Spark, Spring Boot, Vert.x and many others also supported.

【第一步:安装sdkman】

curl -s “https://get.sdkman.io” | bash

具体参数官方的指引https://sdkman.io/install
【第二步:安装groovy】

sdk install groovy

具体参数官方的指引https://groovy.apache.org/download.html#osinstall

安装好后可以直接在命令行下体验一下

groovy -e='println("hello,groovy")'

结果输出为
在这里插入图片描述
或启动groovy的console来写与运行脚本

groovyconsole

在这里插入图片描述

groovy的学习

需要注意一点是,groovy也有自己的sdk(GDK),即groovy语言的基础库/API
在这里插入图片描述

IDE写groovy

【第一步:创建工程】
在这里插入图片描述
在这里插入图片描述
【配置环境】
在这里插入图片描述
注意:IDE中选不了sdkman安装的groovy,所有我们需要下载并安装另个groovy sdk.https://groovy.apache.org/download.html,下载并解析到一个普通目录即可(这个IDE就可以选择目录并配置好groovy的环境)
在这里插入图片描述
【groovy的语法】
1、基本就是所有脚本语言的特性,动态类型呀之类的
2、groovy中的闭包是比较常用与重要,但又比较难理解的

gradle

gradle是基于groovy的构建工具,使用groovy语言构建了一种内部DSL!https://docs.gradle.org/current/dsl/ , 如果在groovy的基础上构建一种内部DSL,官网文档有很全面的介绍,但同时也很复杂与不好理解。
推荐大家看这几篇文章 Groovy 从入门到 MOP

gradle环境安装

推荐使用sdkman来安装

# 可以先用sdk list gradle查看gradle的版本号然后在确定安装的版本
sdk install gradle 7.2

在这里插入图片描述

gradle的学习

【gradle的一些概念汇总】
1、每个待构建的模块称之为一个Project
2、一个Project会包含一系统的Task
3、一系列相关的Task由一个Plugin包装(如构建Java应用就需要Java gradle插件)
4、会有父Project跟子Project的关系,一般在父Project目录下会有一个settings.gradle(它用来配置父Project下有多少个子Project)
5、每次执行 gradle xxx时会生成一个全局的Gradle对象
6、一个build.gradle会转换成一个Project对象
7、根目录的settings.gradle也会转换成一个全局的Settings对象

【gradle常用命令】

#查看项目的task
gradle tasks
#执行某个task
gradle task-name
#查看当着项目的 properites属性
gradle properties
#

示例实践

用一个简单J2SE项目工程来实践一下,工程目录结构如下
说明:项目根目录下只有一个build.gralde脚本,所以是一个简单的单Project
在这里插入图片描述
build.gradle的内容是

apply plugin: 'java'

jar {
    manifest {
        attributes 'Implementation-Title': 'Gradle Quickstart', 'Implementation-Version': '1.2', 'Main-Class': 'Main'
    }
}
//manifest中定义Main-Class很重要,定义后直接就可以使用java -jar xxx.jar包来运行,否侧运行java包时在定义主类

Main.java的内容是

public class Main {
    public static void main(String[] args) {
        System.out.println("test for gradle");
    }
}

打包与运行
在这里插入图片描述

经验总知识

1、简单学习下groovy
2、大概了解一个gradle的工作方式
3、通过一个示例来看gradle的基本用法

参考资料

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值