Gradle初使用

China☆狼群 提交于 2020-03-01 09:26:24

我以前一直使用Maven来构建工程,这两天突然发现gradle也非常好用,记录一下自己使用gradle的过程。

 

 

Gradle的下载与配置

本次选择下载的是gradle3.5版本,没选最新的gradle4,是因为吃过太多次最新版不兼容的亏...从官网直接选择压缩包下载就可以了,无需安装,把其bin目录添加到环境变量即可(和所有配置操作一样),配置好后在cmd中输入gradle -v,会提示版本。

 

 

 

Gradle工程构建

Gradle一般有两种使用方式,gradle build gradlew build

 

spirng boot为例,在Spring Initializr中生成一个spring boot项目,这里不选Maven project,选择Gradle project,选好需要的部件,点击生成项目即可构建一个最简单的gradle项目。

 

 

 

 

目录结构如图,build.gradlegradle build所使用的脚本,gradlew.batwindows使用的gradlew脚本,gradlewlinux使用的gradlew脚本。

 

 

 

Gradle build使用方法

在该目录下键入gradle build

 

 但是出现了exception,真是怕什么来什么。因为最新的spring boot2需要gradle4以上才能build,所以只能下最新的gradle了。

 

 

 

更新之后,版本已经是最新的4.9了,再次build。。还是报错,应该是网络不行,挂上vpnbuild,还是不行。

 

查了一下资料,可以把源地址改成国内地址,具体方法是

对单个文件有效,修改build.gradle文件

buildscript {

    repositories {

        maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }

                maven{ url 'http://maven.aliyun.com/nexus/content/repositories/jcenter'}

    }

    dependencies {

        classpath 'com.android.tools.build:gradle:2.2.3'

 

        // NOTE: Do not place your application dependencies here; they belong

        // in the individual module build.gradle files

    }        

}

 

allprojects {

    repositories {

        maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }

        maven{ url 'http://maven.aliyun.com/nexus/content/repositories/jcenter'}

    }

}

 

每次都生效

C:\\user\{username}\.gradle下新建init.gradle

allprojects{

  repositories {

    def REPOSITORY_URL = 'http://maven.aliyun.com/nexus/content/groups/public/'

      all { ArtifactRepository repo ->

        if(repo instanceof MavenArtifactRepository){

          def url = repo.url.toString()

          if (url.startsWith('https://repo1.maven.org/maven2') || url.startsWith('https://jcenter.bintray.com/')) {

            project.logger.lifecycle "Repository ${repo.url} replaced by $REPOSITORY_URL."

            remove repo

          }

       }

    }

    maven {

      url REPOSITORY_URL

    }

  }

}

 

 

Lib包是打好了,但是报TEST错误,因为没有datasource和操作数据库的实现类,现在都这么严格了吗,我记得spring boot1的时候好像还不是这样,lib里的jar包同理也不能直接使用,也是报没有数据源。错误如图。

 

 

 

等我把整个工程构建地差不多了再来写gradle build gradlew build吧。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!