Gradle从0入门到实战系列【七】一个简单完整的build.gradle

简介: 一个简单完整的build.gradle

前面6篇文章给大家讲解了Gradle的基础部分,大家可以依次查看
Gradle从0入门到实战系列【一】Hello World Gradle
Gradle从0入门到实战系列【二】Groovy And Gradle
Gradle从0入门到实战系列【三】build.gradle之Project
Gradle从0入门到实战系列【四】build.gradle之Task
Gradle从0入门到实战系列【五】工程化之插件
Gradle从0入门到实战系列【六】生命周期剖析

这节课给大家补充下build.gradle中简单的基础配置,算是个小小的总结

apply plugin: 'java'
apply plugin: 'idea'
apply plugin: "war"
//声明
apply plugin: "com.jfrog.bintray"
apply plugin: 'org.akhikhl.gretty' //gradle + jetty 服务器tomcat

/**
 * buildscript {} 是构建工具Gradle自身所需要的资源,并不是给我们应用所使用,可以声明maven库和插件依赖
 * 如:这个区块里包含gradle-plugin的依赖,因为这个插件包含了Gradle构建APP模块所需要的附加命令。 
 */
buildscript {
    /**
     * repositories {} 区域配置Gradle用来下载依赖的仓库地址。
     * Gradle内置支持的远程仓库有JCenter、Maven Central 和 Ivy,4.1版本开始内置支持google()。 
     * 也可以使用本地仓库或者配置我们自己的远程仓库地址。
     * 下面代码示例Gradle使用JCenter作为查找依赖库的代码仓库。
     */
    repositories {
        maven {url "https://maven.aliyun.com/repository/public"}
        maven {url "https://maven.aliyun.com/repository/gradle-plugin"}
        jcenter()
    }

    /**
     * dependencies {} 区域配置了Gradle编译APP工程所需要的依赖。
     * 下面代码展示路径依赖3.1.0版本gradle-plugin
     */
    
    dependencies {
        classpath "com.jfrog.bintray.gradle:gradle-bintray-plugin:1.8.0"
        classpath 'org.akhikhl.gretty:gretty:+'
    }
}

//只允许buildscript 和 pluginManagement在它前面
plugins {
    //核心插件,gradle提供
    id 'java'
    id 'eclipse'
    id 'war'
    //非核心插件(社区插件),必须通过id+version的方式进行约束
    id 'com.bmuschko.docker-remote-api' version '6.7.0'
    id 'com.jfrog.bintray' version '1.8.5'
}

//gav 坐标
group 'com.it235'
version '1.0.0'

sourceCompatibility = 1.8
targetCompatibility = 1.8

/**
 * allprojects {} 区域可以配置工程中所有模块都用到的代码仓库和依赖,如,三方插件或者库。
 * 如果是一个单体项目可以无需使用allprojects闭包,,直接将repositories写在根节点下
 */
allprojects {
   repositories {
       maven { url 'https://maven.aliyun.com/repository/jcenter' }
       maven { url 'https://maven.aliyun.com/repository/google' }
       maven { url 'https://maven.aliyun.com/repository/central' }
       maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }
       google()
       jcenter()
   }
}

/**
 * subprojects {} 区域可以配置工程中所有子模块所使用的代码仓库和依赖,如,三方插件或者库。
 * 与allprojects相对应,使用场景较少
 */
subprojects {
   repositories {
       jcenter()
   }
}

test{
    useJUnitPlatform()
}

task cleanx() {
    println "Hello Gradle"
    //Groovy语法,Gradle正真强大的地方,太灵活,所以上手的成本非常高,这也是为什么别人说比Maven好的地方,Maven XML扩展能力太差了
}
目录
相关文章
|
6月前
|
XML Java 测试技术
Gradle安装部署与基础入门详解
Gradle安装部署与基础入门详解
714 0
|
6月前
|
XML 缓存 Java
Gradle 构建自动化工具入门
Gradle 构建自动化工具入门
|
XML Java Apache
Gradle极简入门
Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建工具。它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,而不是传统的XML。Gradle构建脚本是用Groovy编写的,也可以使用Kotlin编写,两者都是基于JVM的语言。
313 0
|
Java 编译器 API
Gradle筑基篇(五)-Gradle自定义插件实战
前面几篇文章笔者对Gradle的一些基础认知,groovy基础语法,以及Gradle 项目中常用的一些api进行了讲解。今天笔者再来讲解一些关于`Gradle插件`的使用
|
前端开发 Java Maven
Gradle build.gradle 文件
Gradle build.gradle 文件
Gradle build.gradle 文件
|
XML 存储 缓存
|
弹性计算 Java jenkins
Gradle从0入门到实战系列【十】集成Dockerfile构建Docker镜像
在工作中,我们会将SpringBoot程序打包成Docker镜像,这就需要在Gradle中配置Dockerfile构建程序,并且能将打包后的镜像部署并启动为一个容器,Gradle的插件能够帮我们完成这件事
1185 0
Gradle从0入门到实战系列【十】集成Dockerfile构建Docker镜像
|
缓存 Java Linux
Gradle从0入门到实战系列【九】仓库与私服
Gradle沿用了Maven仓库,在使用仓库时能够很友好的基于Maven仓库提供功能,但Gradle所产生的构建并不会提供给Maven仓库,因为Gradle自己拷贝了一份Maven本地仓库缓存到了自己仓库目录下。
1188 0
Gradle从0入门到实战系列【九】仓库与私服
|
人工智能 移动开发 Java
Android Studio插件版本与Gradle 版本对应关系
Android Studio插件版本与Gradle 版本对应关系
2247 0
Android Studio插件版本与Gradle 版本对应关系
|
存储 Java Android开发
Android 开发 - 充分利用Gradle
Android 开发 - 充分利用Gradle
168 2