当前位置: 首页>编程语言>正文

gradle 获取架构 gradle详解



文章目录

  • 系列文章目录
  • gradle介绍
  • 一、Gradle是什么?
  • 二、安装与使用
  • 1.安装gradle
  • 2.使用gradle
  • 2.1常用命令
  • 2.2Idea创建gradle工程
  • 2.3使用gradle
  • 2.4父子工程
  • 总结



gradle介绍

本文主要介绍gradle及基本用法


一、Gradle是什么?

Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建开源工具,GSL提供了灵活的项目布局。
gradle座右铭:让不可能变成可能,让可能变得简单,让简单变得优雅。
gradle特征集:

  1. 具有表达式语言和强大的API
  2. 灵活的约定
  3. 强大的依赖管理
  4. 可扩展的构建
  5. 毫不费力的扩展
  6. 社区驱动与公司支持
  7. 和其他构建工具集成
  8. gradle就是groovy

二、安装与使用

1.安装gradle

在https://github.com/gradle/gradle/tags 下载自己想要版本

1、解压在D:\work\

2、设置环境变量

GRADLE_HOME=D:/work/gradle-6.1.1

path加上%GRADLE_HOME%\bin

3、测试是否安装成功

gradle 获取架构 gradle详解,gradle 获取架构 gradle详解_gradle,第1张

2.使用gradle

2.1常用命令

常见任务执行命令:

命令

作用

gradle -v

查看版本

gradle -q task名称

执行task

gradle -q tasks

列出所有task

Gradle 命令行工具用法:
Gradle [Option…] [Tasks…]
可以看出Gradle CLI就是告诉Gradle如何执行预定义的任务的工具,是面向Task的界面。
其中Task大体上分为两种:
1.探索类Task,即帮助Task;
2.构建设置Task,这种Task完成构建的预设置;
3.构建Task,完成构建的Task;
option可以完成配置输入的工作,即构建的配置信息可以通过CLI提供(当然也可以写成配置文件)。其中不需要提供值得option可以被组合使用,例如 -i -q <=> -iq
下面将分别介绍tasks 和 options

选项

含义

dependencies

列出项目的依赖,包括传递性依赖。

dependencyInsight

解释在依赖图中一个依赖如何被选择,为什么会被选择。检查一个特定的依赖,需要提供–dependency参数。检查compile以来以外的依赖时使用 --configuration参数。使用例子:dependencyInsight --denpendency apache-commons

help

显示Gradle CLI最基本的用法,如果运行gradle命令而没有指定task,则help 被自动执行。

projects

显示在多项目构架中的所有子项目,单项目构建没有子项目。

properties

列出项目中所有可用的属性,有些属性是由Gradle的project对象提供的。other properties是由用户自定义的属性,可能来自于属性文件、属性命令行选项、直接在构建脚本中定义。

tasks

显示项目中所有可运行的task,包括他们的描述信息。项目的插件也会提供额外的task。可以使用 --all 来显示task的附加信息。

buildEnviroment

显示root project的构建脚本的依赖。

components

显示该项目的所有的component

dependentComponents

显示该项目所有components的dependent components

model

显示项目配置的model

2.2Idea创建gradle工程

java工程

gradle 获取架构 gradle详解,gradle 获取架构 gradle详解_gradle_02,第2张

build.gradle:

plugins {
    id 'java'
}

group 'org.example'
version '1.0-SNAPSHOT'

repositories {
    mavenCentral()
}

dependencies {
    testImplementation 'org.junit.jupiter:junit-jupiter-api:5.7.0'
    testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.7.0'
}

test {
    useJUnitPlatform()
}
plugins {
 id ‘java’
 }
 id ‘java’ java工程 application 插件可简化绑定运行的任务repositories{
 }
 添加项目下载依赖包的库dependencies{
 }


添加项目依赖的jar

gradle-wrapper.properties:

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.8-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

distributionUrl gradle下载地址
可以写成 file:///D:/work/gradle-6.8-bin.zip

2.3使用gradle

2.4父子工程

创建父级项目,全取消,不勾选。

gradle 获取架构 gradle详解,gradle 获取架构 gradle详解_Gradle_03,第3张

成功如下图,只有setting.gradle和build.gradle两个文件

gradle 获取架构 gradle详解,gradle 获取架构 gradle详解_gradle_04,第4张

创建子工程

gradle 获取架构 gradle详解,gradle 获取架构 gradle详解_gradle_05,第5张

gradle 获取架构 gradle详解,gradle 获取架构 gradle详解_java_06,第6张

修改parent工程build.gradle:

buildscript {
    ext {
        springBootVersion = '2.0.0.RELEASE'
    }

    repositories {
        mavenCentral()
        jcenter()
    }

    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
    }
}

allprojects {
    group 'com.demo.project'
    version '1.0-SNAPSHOT'
}

subprojects {
    apply plugin: 'java'
    apply plugin: 'idea'
    apply plugin: "io.spring.dependency-management"

    sourceCompatibility = 1.8
    targetCompatibility = 1.8

    repositories {
        mavenLocal()
        mavenCentral()
        jcenter()
    }

    dependencies{
        //这里如果配置了jar包依赖,所有子项目共享,使用了gradle的依赖传递特性。
        testCompile group: 'junit', name: 'junit', version: '4.12'
    }
}

总结

本文主要介绍gradle是什么及特征,gradle常用命令、java工程构建、父子工程构建。



https://www.xamrdz.com/lan/5xq1960380.html

相关文章: