gradle的下载、解压、环境变量配置以及命令行基本用法

news2024/12/23 8:38:42

父目录 Android 开发入门 - wuyujin1997

文章目录

    • Intro
    • 下载
    • 解压
    • 配置环境变量
      • 环境变量测试
    • 命令行
      • 命令行基本用法
      • 命令行更多用法

Intro

关于Java项目的依赖、编译流程等管理,有三代的解决方案。

  1. Ant
  2. Maven
  3. Gradle

可以想像这三代工具必定是各有特定,但整理功能性一定是逐渐增强的。
Gradle号称极强,不过目前大多数项目还是基于Maven来做项目的【依赖管理、编译流程管理】等。
不巧,我需要接触到 Gradle ,所以在这里记录一下对其的使用过程。

下载

在下载页:https://gradle.org/releases/ 下载一个合适的版本。
我下载的是:https://downloads.gradle.org/distributions/gradle-8.2-bin.zip

解压

.zip格式的压缩包在macOS中可在 Finder/访达 中直接双击即可解压。
而我放置gradle的位置是:/Users/wuyujin1997/Dev/gradle-8.2
在这里插入图片描述

配置环境变量

在上一步你已经看到,gradle目录中的bin/文件夹下有两个脚本。
第一个gradle是shell脚本,可执行于类unix系统(包含Linux与macOS);
而另一个gradle.bat是批处理脚本,可执行于Windows系统中。

我们要做的就是最终使得这个gradle的bin/目录包含在Path环境变量中(这样以后再想执行这个目录下的命令脚本,就可以不用带全路径)。

# 先进入用户目录
wuyujin1997@mac11 ~ % cd ~


# 看一下系统默认使用的是那个shell,macOS一般默认使用zsh,linux一般默认使用bash(这决定我们即将要把环境变量配置到哪个配置文件中)。
wuyujin1997@mac11 ~ % echo $SHELL
/bin/zsh

# 查看用户目录下的zsh相关配置
wuyujin1997@mac11 ~ % ls -alhG ~ | grep z
-rw-r--r--     1 wuyujin1997  staff   145B  4  1  2022 .zprofile
-rw-------     1 wuyujin1997  staff    24K  7 16 07:20 .zsh_history
drwx------    16 wuyujin1997  staff   512B  7 16 07:20 .zsh_sessions
-rw-r--r--     1 wuyujin1997  staff   106B  3 19 16:33 .zshrc
drwxr-xr-x     3 wuyujin1997  staff    96B  3 23 00:05 Virtual Machines.localized

# 编辑zsh的 run command 配置文件(新增的配置内容见后)
wuyujin1997@mac11 ~ % vi ~/.zshrc 

# 查看最新的配置文件
wuyujin1997@mac11 ~ % more ~/.zshrc 

export SPRING_HOME=/Users/wuyujin1997/Desktop/Programs/spring-3.0.4
export PATH=$SPRING_HOME/bin:$PATH

# 这两行就是本次为 gradle 添加的配置
export GRADLE_HOME=/Users/wuyujin1997/Dev/gradle-8.2
export PATH=$GRADLE_HOME/bin:$PATH

# 用 source 重新加载最新的、更新过后的配置文件
wuyujin1997@mac11 ~ % source ~/.zshrc 

wuyujin1997@mac11 ~ % 

环境变量测试

如何校验我们的 gradle 环境变量是否配置成功呢?

# 打印一下刚才配置好的 GRADLE_HOME
wuyujin1997@mac11 ~ % echo $GRADLE_HOME
/Users/wuyujin1997/Dev/gradle-8.2


# 测试 gradle 命令是否在 PATH 环境变量中(用 which 可以看出其完全路径,在windows中没有which命令,可以用where命令)
wuyujin1997@mac11 ~ % which gradle
/Users/wuyujin1997/Dev/gradle-8.2/bin/gradle

# 既然 gradle 已经正确配置到了 PATH 环境变量下,那我们看一下 gradle 的版本
wuyujin1997@mac11 ~ % gradle --version

Welcome to Gradle 8.2!

Here are the highlights of this release:
 - Kotlin DSL: new reference documentation, assignment syntax by default
 - Kotlin DSL is now the default with Gradle init
 - Improved suggestions to resolve errors in console output

For more details see https://docs.gradle.org/8.2/release-notes.html


------------------------------------------------------------
Gradle 8.2
------------------------------------------------------------

Build time:   2023-06-30 18:02:30 UTC
Revision:     5f4a070a62a31a17438ac998c2b849f4f6892877

Kotlin:       1.8.20
Groovy:       3.0.17
Ant:          Apache Ant(TM) version 1.10.13 compiled on January 4 2023
JVM:          11.0.1 (Oracle Corporation 11.0.1+13-LTS)
OS:           Mac OS X 10.16 x86_64

wuyujin1997@mac11 ~ % 

命令行

命令行基本用法

gradle --version
gradle help
gradle tasks

要注意的是, gradle helpgradle tasks 这样的命令,需要你在一个含有gradle.build 文件的目录下执行,否则只会有一些错误提示信息。
build.gradle 文件之于 gradle,就好像 pom.xml 之于maven ,都是用于管理项目依赖、编译流程等的核心配置文件。

wuyujin1997@mac11 ~ % gradle help
Starting a Gradle Daemon (subsequent builds will be faster)

> Task :help

Welcome to Gradle 8.2.

Directory '/Users/wuyujin1997' does not contain a Gradle build.

To create a new build in this directory, run gradle init

For more detail on the 'init' task, see https://docs.gradle.org/8.2/userguide/build_init_plugin.html

For more detail on creating a Gradle build, see https://docs.gradle.org/8.2/userguide/tutorial_using_tasks.html

To see a list of command-line options, run gradle --help

For more detail on using Gradle, see https://docs.gradle.org/8.2/userguide/command_line_interface.html

For troubleshooting, visit https://help.gradle.org

BUILD SUCCESSFUL in 9s
1 actionable task: 1 executed


wuyujin1997@mac11 ~ % gradle tasks

FAILURE: Build failed with an exception.

* What went wrong:
Directory '/Users/wuyujin1997' does not contain a Gradle build.

A Gradle build should contain a 'settings.gradle' or 'settings.gradle.kts' file in its root directory. It may also contain a 'build.gradle' or 'build.gradle.kts' file.

To create a new Gradle build in this directory run 'gradle init'

For more information about the 'init' task, please refer to https://docs.gradle.org/8.2/userguide/build_init_plugin.html in the Gradle documentation.

For more details on creating a Gradle build, please refer to https://docs.gradle.org/8.2/userguide/tutorial_using_tasks.html in the Gradle documentation.

* Try:
> Run gradle init to create a new Gradle build in this directory.
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Get more help at https://help.gradle.org.

BUILD FAILED in 1s
wuyujin1997@mac11 ~ % 

命令行更多用法

后续我也许会整理在这里。
你也可以自己完成这一步。

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

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

相关文章

【算法 -- LeetCode】(020) 有效的括号

1、题目 给定一个只包括 ‘(’,‘)’,‘{’,‘}’,‘[’,‘]’ 的字符串 s ,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个…

javaagent简单理解

1. javajaent是什么 javaagent可以理解为是一个插件,需要有一个jvm进程才能运行。例如arthas这个工具就是用到了javaagent。 2. 如何使用 1. 一种调用方式:java -javaagent:path[参数参数值] 2. 方法签名 public static void premain(String args, I…

从零玩转系列之SpringBoot3-核心原理

一、简介 1.前置知识 ● Java17 ● Spring、SpringMVC、MyBatis ● Maven、IDEA 2.环境要求 环境&工具版本(or later)SpringBoot3.1.xIDEA2023.xJava17Maven3.5Tomcat10.0Servlet5.0GraalVM Community22.3Native Build Tools0.9.19 二、SpringBoot3-核心原理 1.事件和监听器…

【Hippo4j监控Web容器Tomcat线程池】

🚀 线程池管理工具-Hippo4j 🚀 🌲 AI工具、AI绘图、AI专栏 🍀 🌲 如果你想学到最前沿、最火爆的技术,赶快加入吧✨ 🌲 作者简介:硕风和炜,CSDN-Java领域优质创作者&#…

知识整合:Web页面请求的历程

Web页面请求的历程 内部涉及知识:一、准备:DHCP、UDP、IP 和以太网二、仍在准备:DNS和ARP三、仍在准备:域内路由选择到DNS服务器四、Web客户-服务器交互:TCP和HTTP五、HTTP请求响应格式Requests部分Responses 部分 下载一个Web页面…

2023.7.15

同余最短路 P3403 跳楼机 题意:给定h高的楼层,起始位置在第一层,可以选择操作向上移动x层或y层或z层,回到第一层 求可以到达的楼层数 思路:转化题意为求axbyczk(k在[1,h],x,y,z为正整数,有多少k满足条件&am…

基础IO

1.C的文件接口 "r" - 只读模式,打开文件用于读取,文件必须存在。 "w" - 写模式,打开文件用于写入,如果文件已存在则清空文件内容,如果文件不存在则创建新文件。 "a" - 追加模式&#…

手把手搭建mybatis入门程序

目录 准备数据库表 搭建工程 引入日志框架lockback SqlSessionUtil工具类封装 准备数据库表 CREATE TABLE t_car (id bigint NOT NULL AUTO_INCREMENT COMMENT 主键,car_num varchar(100) DEFAULT NULL COMMENT 汽车编号,brand varchar(100) DEFAULT NULL COMMENT 品牌,gui…

阿里云2核4G服务器能搭建几个网站?性能如何?

2核4G服务器能安装多少个网站?2核4g配置能承载多少个网站?一台2核4G服务器可以安装多少个网站?阿腾云2核4G5M带宽服务器目前安装了14个网站,从技术角度是没有限制的,只要云服务器性能够用,想安装几个网站就…

Java正则表达式校验某个字符串是否是合格的email

Java正则表达式校验某个字符串是否是合格的email 可以借助正则表达式校验某个字符串是否是合规的电子邮箱。对于邮箱的正则表达式有严格的模式,如:^[a-zA-Z0-9_&*-](?:\\.[a-zA-Z0-9_&*-])*(?:[a-zA-Z0-9-]\\.)[a-zA-Z]{2,7}$ 对应的Java实现…

Verilog基础之十六、RAM实现

目录 一、前言 二、工程设计 2.1 RAM IP核使用 2.2 设计代码 2.3 仿真代码 2.4 综合结果 2.5 仿真结果 一、前言 工程设计中除逻辑计算单元外,存储单元也是不可获取的部分,RAM(Random Access Memory)随机存取存储器即可以写入数据,也可…

Spring Cloud Gateway下的GC停顿排查之旅

01 背景 在微服务架构体系流行的当下,Spring Cloud全家桶已经是大多数团队的首选,我们也不例外,并且选择了Spring Cloud Gateway作为了业务网关,进行了一些通用能力的开发,如鉴权、路由等等。作为一个成熟的框架&#…

非线性弹簧摆的仿真(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

matplotlib定制绘图的线型、标记类型

文章目录 折线图参数列表实战演示特征字符串 折线图 折线图是科研绘图中最常见的一种图形, 表现的是数据的变化情况 import numpy as np import matplotlib.pyplot as pltx np.linspace(0,10,100) y np.sin(x) plt.plot(x,y) plt.show()参数列表 尽管绘图逻辑十…

Tensorflow-gpu保姆级安装教程(Win11, Anaconda3,Python3.9)

Tensorflow-gpu 保姆级安装教程(Win11, Anaconda3,Python3.9) 前言Tensorflow-gpu版本安装的准备工作(一)、查看电脑的显卡:(二) 、Anaconda的安装(三)、cuda下载和安装(四)、cudnn下载安装(五)、配置环境变量(六)、创建 tensorfl…

idea生成类关系图Diagrams

打开或选择该类,此处我以FutureTask类为例 在打开的该类内容内随意地方右键(或选中该类文件)》选择Diagrams》Show Diagrams》Java Classes此时就可以看到该类的关系图了

剖析C语言字符串函数

目录 前言: 一、strlen函数 功能: 参数和返回值: 注意事项: 返回值是无符号的易错点: strlen函数的模拟实现 1、计数器算法 2、递归算法 3、指针减去指针 二、strcpy函数 功能: 参数和返回值 …

【小沐学NLP】龙猫-InsCode Stable Diffusion 美图活动一期

文章目录 1、应用简介1.1 Stable Diffusion模型1.2 Stable Diffusion WebUI1.3 InsCode平台 2、界面简介2.1 打开Stable Diffusion WebUI2.2 选择模型2.3 选择功能模块2.4 文本输入2.5 参数设置 3、测试3.1 龙猫3.2 恐龙3.3 蓝天白云3.4 美少女战士 4、其他4.1 DALLE 24.2 Drea…

Linux调试工具GDB(2)

文章目录 前言一、数据断点二、x查看内存命令三、深入info命令四、调试中的技巧总结 前言 本篇文章我们继续讲解GDB调试。 一、数据断点 在 GDB (GNU Debugger) 中,数据断点是一种断点类型,它允许你在程序访问指定内存地址的数据时暂停程序的执行。通…

浅聊 【ThreadLocal】(超级详细)

写在开始 : 本文主要讲述 : ThreadLocal简介; 常用API; demo案例; 特点引用场景;以及部分底层原理源码内容。 引言 : 从常见面试题看 ThreadLocal: **①解释 **: ThreadLocal是多线程中对于解决线程安全的一个操作类,它会为每个线程都分 配一…