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

Gradle ——Gradle安装与配置

目录

一、简介

二、功能和特点

三、安装


参考:

Gradle_百度百科

Gradle 学习 ----Gradle 入门_你若不离不弃,我必生死相依的博客-CSDN博客

还有硬石科技的开源wifiAPP程序,没找到他们的码仓

一、简介

Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建开源工具。它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,也增加了基于Kotlin语言的kotlin-based DSL,抛弃了基于XML的各种繁琐配置。

面向Java应用为主。当前其支持的语言C++、Java、Groovy、Kotlin、Scala和Swift,计划未来将支持更多的语言。

Gradle是一个基于JVM的构建工具,是一款通用灵活的构建工具,支持maven, Ivy仓库,支持传递性依赖管理,而不需要远程仓库或者是pom.xml和ivy.xml配置文件,基于Groovy,build脚本使用Groovy编写。

二、功能和特点

Ø gradle对多工程的构建支持很出色,工程依赖是gradle的第一功能。

Ø gradle支持局部构建。

Ø 支持多方式依赖管理:包括从maven远程仓库、nexus私服、ivy仓库以及本地文件系统的jars或者dirs

Ø gradle是第一个构建集成工具,与ant、maven、ivy有良好的相容相关性。

Ø 轻松迁移:gradle适用于任何结构的工程,你可以在同一个开发平台平行构建原工程和gradle工程。通常要求写相关测试,以保证开发的插件的相似性,这种迁移可以减少破坏性,尽可能的可靠。这也是重构的最佳实践。

Ø gradle的整体设计是以作为一种语言为导向的,而非成为一个严格死板的框架。

Ø 免费开源

1. 一种可切换的,像maven一样的基于约定的构建框架,却又从不锁住你(约定优于配置)

2. 强大的支持多工程的构建

3. 强大的依赖管理(基于Apache Ivy),提供最大的便利去构建你的工程

4. 全力支持已有的Maven或者Ivy仓库基础建设

5. 支持传递性依赖管理,在不需要远程仓库和pom.xml和ivy配置文件的前提下

6. 基于groovy脚本构建,其build脚本使用groovy语言编写

7. 具有广泛的领域模型支持你的构建

三、安装

Gradle官网:Gradle Build Tool
Gradle官方下载安装教程页面:Gradle | Installation
Gradle官方用户手册:Gradle User Manual

我们需要匹配版本,在官网找,我的idea22.2匹配的是Gradle7.4

Third Party Software and Licenses - JetBrains 

检查一下java版本只要比1.8高就行

Gradle | Releases

然后按照官方的指引找到我们需要的版本 

 左面是进二进制源文件,右面是带文档的,我们学习肯定要选后面

推荐用迅雷能快很多

下载完成后解压到随便一个目录

然后配置环境变量

 这两个是我们解压gradle的bin目录的上一层,上多层也行,但是下面path就要多写几层一直指定到bin

 

 

 GRADLE的本地仓库地址和maven保持一致,参考自己的。

检查一下成功咯

 

和配置Maven一样配置一下这里

 

硬石的开源手机wifiAPP这里有报错我注释掉试试

Caused by: org.gradle.api.plugins.UnknownPluginException: Plugin with id 'com.android.application' not found.
 还是会报错

后面再深入学习吧,因为我是干嵌入式的主要就是了解一下做点和嵌入式相关的测试工具,或者做点小玩具不打算深学,先以这个程序为基础研究一下。

 

再下载的gradle下找到init.d文件夹

然后写入一下内容

allprojects {
    repositories {
        mavenLocal()
        maven { name "Alibaba" ; url "https://maven.aliyun.com/repository/public" } 
        maven { name "Bstek" ; url "https://nexus.bsdn.org/content/groups/public/" } 
        mavenCentral()
    }
    
    buildscript {
        repositories {
            maven { name "Alibaba" ; url 'https://maven.aliyun.com/repository/public' } 
            maven { name "Bstek" ; url 'https://nexus.bsdn.org/content/groups/public/' } 
            maven { name "M2" ; url 'https://plugins.gradle.org/m2/' }
        }
    }

使他生效的方法有四种

1.在命令行指定文件,例如:gradle --init-script yourdir/init.gradle -q taskName。你可以多次输入此命令来指定多个init文件
2.把init.gradle文件放USER_HOME/.gradle/ 目录下
3. 把以.gradle结尾的文件放到 USER_HOME/.gradle/init.d/ 目录下
4. 把以.gradle结尾的文件放到 GRADLE_HOME/init.d/ 目录下

如果存在上面的4种方式的2种以上,gradle会按上面的1-4序号依次执行这些文件,如果给定目录下存在多个init脚本,会按拼音a-z顺序执行这些脚本,每个init脚本都存在一个对应的gradle实例,你在这个文件中调用的所有方法和属性,都会委托给这个gradle实例,每个init脚本都实现了Script接口。

上面配置的位置不对。指定maven仓库位置是指定maven的位置而不是仓库的位置

 mavenLocal():
指定使用maven本地仓库,而本地仓库在配置maven时settings文件指定的仓库位置。如E:/repository,gradle
查找jar包顺序如下:USER_HOME/.m2/settings.xml >>
M2_HOME/conf/settings.xml >>
USER_HOME/.m2/repository

貌似没问题了

慢慢重头学吧,不能一口气吃成胖子。 

http://www.lryc.cn/news/70213.html

相关文章:

  • 网络安全这条路到底该怎么走?
  • 【C++】位图(海量数据处理)
  • 外包干了五年,废了...
  • 请问你如何理解以下的歌词“unravel - TK from 凛冽时雨 (TK from 凛として時雨)为什么很多人说崖山海战以后无中国
  • 从8连挂到面面offer,我只用了一个月,面试25K测试岗血泪经验分享给你
  • 计算机操作系统(慕课版)第二章课后题答案
  • 【离散数学】置换群和伯恩赛德定理编程题
  • 【自然语言处理】 - 作业2: seq2seq模型机器翻译
  • 随身WIFI折腾日记(四)---拓展USB接口读取U盘内容
  • 【C++初阶】类与对象(中)之取地址及const取地址操作符重载(了解即可)
  • 代驾公司如何管理司机
  • 面了一个5年经验的测试工程师,自动化都不会也敢喊了16k,我也是醉了····
  • ChatGPT:你真的了解网络安全吗?浅谈攻击防御进行时之网络安全新定义
  • LeetCode_DFS_困难_1377.T 秒后青蛙的位置
  • 第四十九天学习记录:C语言进阶:结构体
  • LeeCode [N字形变换]算法解析
  • CPU性能提升:流水线
  • C语言指针初级
  • C++的历史
  • 保姆级别!!!--全网绝对教你会!!教你如何使用MQTTFX连接阿里云平台中的设备----下期告诉你如何创建!
  • Unexpected token ‘‘‘, “‘{“type“:““... is not valid JSON
  • 关于C语言的杂记5
  • YOLOv5 vs YOLOv6 vs YOLOv7目标检测模型速度和准确度的性能比较——深入研究
  • 如何增加网站权重?有效提高网站权重的技巧方法
  • 路径规划 | 图解快速随机扩展树RRT算法(附ROS C++/Python/Matlab仿真)
  • 【Stable Diffusion WebUI】一篇文章教你如何安装和使用Stable Diffusion WebUI
  • Python篇——数据结构与算法(第二部分)
  • 人工智能之读懂CNN卷积神经网络
  • go手写Redis(1)之协议说明
  • Hadoop/HbBase/Hive/HDFS/MapReduce都是什么?