Single

Gradle使用笔记

Gradle 是一个专注于构建自动化、提供多语言支持的构建工具,假如你需要构建、测试、发布以及部署软件到某些平台,Gradle 提供一个灵活的模型,提供从编译、打包代码并发布到网站的整个开发生命周期支持,Gradle 设计之初就考虑到支持构建自动化,多语言以及跨平台。Gradle 目前支持的语言主要有 Java,Scala,Android,C/C++,Groovy。和开发工具以及持续集成服务器整合在一起,如:Eclipse,Intellij,Jenkins。

Gradle 的优势

免费
社区完善
AndroidStudio 自动构建工具
相比 xml 配置文件,语法极尽简洁,后续例子会给出相关代码对比
新技术总是很酷

在 Windows7 下安装 Gradle

Gradle 的运行需要Java JDK 的支持,JDK 的版本至少是1.7。cmd 运行 java -version 以验证 java 版本。

<code class="language-cmd hljs lasso has-numbering">C:Userskyyee>  java -version
java version "1.8.0_74"
Java(TM) SE Runtime Environment (build 1.8.0_74-b02)
Java HotSpot(TM) 64-bit Server VM (build 25.74-b02, mixed mode)</code>

使用包管理工具安装

Chocolatey 是 Windows 下的一个包管理工具

安装完成后在 cmd 运行 choco install gradle

<code class="language-cmd hljs tex has-numbering">C:Userskyyee>  choco install gradle</code>

手动安装

    最新 Gradle 二进制文件包下载,以前的版本下载
    解压二进制文件包,将二进制文件包复制到希望安装的目录下如:C:Program Files (x86)Gradle
    配置系统环境变量
    GRADLE_HOME=”C:Program Files (x86)Gradlegradle-3.4.1”
    PATH=”%GRADLE_HOME%/bin”
    验证你的安装
<code class="language-cmd hljs tex has-numbering">C:Userskyyee>  gradle -v</code>

输入如图所示,表示安装成功。

在 IDEA 中使用 Gradle

进入 IDEA 创建新项目的引导界面,选择创建 Gradle 项目,如图所示。

勾选 Web ,IDEA 创建的目录结构如图所示。

不勾选 Web ,IDEA 创建的目录结构如图所示。

点击Next进入下一步,如图所示。

这里需要填写项目的组织所有者和项目名称,进入下一步,如图所示。

建议全部勾选并选择本地Gradle,进入下一步,确认信息,点击Finish,一个Gradle项目就构建完成了。

IDEA 中的 gradle 解析
目录结构

一般来说,使用 IDEA 引导生成的 gradle 项目,目录层次如下:

<code class="language-window7 hljs avrasm has-numbering">├── .gradle               项目 gradle 的记录
├── .idea                 项目IDEA 配置信息
├── gradle                gradle 版本信息,版本下载地址,方便同意gradle版本
├── src                   项目根目录
    ├── main
        ├── java          Java 代码
        ├── resources     资源
    ├── test
├── build.gradle          构建脚本
├── demo.iml              项目配置文件,导入项目自动生成
├── gradlew               gradle unix 启动脚本
├── gradlew.bat           gradle windows 启动脚本</code>

gradlew 与 gradlew.bat 脚本文件在即使没装 gradle 的机器上也能运行,gradlew 与 gradle 的命令大致相同,只是 gradlew 多了一个环境检测。

build.gradle 详解

这是一个默认的gradle配置文件

<code class="language-gradle hljs bash has-numbering">buildscript {
    ext {
        springBootVersion = '1.5.2.RELEASE'
    }
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
    }
}

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'org.springframework.boot'

version = '0.0.1-SNAPSHOT'
sourceCompatibility = 1.8

repositories {
    mavenCentral()
}


dependencies {
    compile('org.springframework.boot:spring-boot-starter-web')
    testCompile('org.springframework.boot:spring-boot-starter-test')
}</code>

buildscript 代码块

脚本自身需要的依赖、仓库和扩展

apply plugin

引入插件

repositories 仓库

仓库地址(只讨论 maven 仓库),这里可引入的仓库有两类,远程中心仓库,本地仓库。

远程中心仓库主要有两种引入方式。

<code class="language-gradle hljs scss has-numbering">    maven {
        url("http://maven.aliyun.com/nexus/content/groups/public/") // 阿里云远程仓库
    }
    mavenCentral()</code>

maven 中心仓库 repo1.maven.org/maven2 速度较慢,建议使用阿里云远程镜像仓库,当在阿里云远程镜像仓库中找不到资源时采取中心仓库下载

本地仓库同样有两种方式引入。

<code class="language-gradle hljs bash has-numbering">    mavenLocal()
    maven {
        url "file:///D:/.m2/repository"
    }</code>

实际上,当你的 maven 本地仓库为 C:/Users/kyyee/.m2/repository/ 时,你才可以使用mavenLocal(),否则 gradle 是找不到本地 maven 仓库的,此时只能使用 url 文件定位。

dependencies 依赖

如果你细致读下来,相信你已经对 gradle 有了初步认识。对比 maven 构建工具的 pom.xml ,相信 build.gradle 让你眼前一亮。对于构建工具来说,依赖管理是它的灵魂。

使用gradle的依赖管理很简单,mvnrepository 搜索需要使用的jar包名,选择合适的jar包进入详情页,选择合适的版本,复制 gradle 依赖代码粘贴在 dependencies 里面。

:http://www.linuxidc.com/Linux/2017-06/145272.htm

暂无评论

发表评论