我以前一直使用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.gradle是gradle build所使用的脚本,gradlew.bat是windows使用的gradlew脚本,gradlew是linux使用的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吧。

Gradle初使用的更多相关文章

  1. Gradle -- 初体验

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

  2. 学习笔记——Maven实战(六)Gradle,构建工具的未来?

    Maven面临的挑战 软件行业新旧交替的速度之快往往令人咂舌,不用多少时间,你就会发现曾经大红大紫的技术已经成为了昨日黄花,当然,Maven也不会例外.虽然目前它基本上是Java构建的事实标准,但我们 ...

  3. Maven、gradle、Ant、Eclipse IDE

    Maven.gradle.Ant.Eclipse IDE之间的关系 http://wenku.baidu.com/view/d33208810912a21615792910.html?from=sea ...

  4. Maven Gradle

    场景:随着项目越来越规范,对构建工具的要求越来越高,我们从Maven转到了Gradle. 转自:http://www.infoq.com/cn/news/2011/04/xxb-maven-6-gra ...

  5. Maven和Gradle的区别

    转自:http://www.infoq.com/cn/news/2011/04/xxb-maven-6-gradle Maven面临的挑战 软件行业新旧交替的速度之快往往令人咂舌,不用多少时间,你就会 ...

  6. Maven Gradle 区别

    Maven面临的挑战 软件行业新旧交替的速度之快往往令人咂舌,不用多少时间,你就会发现曾经大红大紫的技术已经成为了昨日黄花,当然,Maven也不会例外.虽然目前它基本上是Java构建的事实标准,但我们 ...

  7. Maven实战——Gradle,构建工具的未来?

    许晓斌-- 四月 05, 2011 Maven面临的挑战 软件行业新旧交替的速度之快往往令人咂舌,不用多少时间,你就会发现曾经大红大紫的技术已经成为了昨日黄花,当然,Maven也不会例外.虽然目前它基 ...

  8. [Gradle] Gradle 构建工具的未来

    转载地址:http://www.infoq.com/cn/news/2011/04/xxb-maven-6-gradle Maven面临的挑战 软件行业新旧交替的速度之快往往令人咂舌,不用多少时间,你 ...

  9. gradle的安装,配置,构建,研究,初体验......(入职一周研究的第一个大知识点)

    (1)Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建工具.它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,抛弃了基于XML的各种繁琐配置.更 ...

随机推荐

  1. ActionBar自己定义改动无效解决方法

    假设程序支持API11下面的版本号,那么须要改动多个地方 values-v14 和values-v11以下的styles中也要写上 <style name="AppTheme" ...

  2. python3爬虫-通过selenium获取TB商品

    from selenium import webdriver from selenium.webdriver.support.wait import WebDriverWait from seleni ...

  3. python3>日期和时间

    阅读目录 1.python3日期和时间 2.时间元组 3.获取格式化的时间 4.格式化日期 5.获取月日历 6.Time模块 7.datetime模块 回到顶部 1.python3日期和时间 Pyth ...

  4. pycharm使用杂记

    R语言解释器在/opt/local/Library/Frameworks/R.framework/Versions/3.5/Resources/bin/R

  5. sqoop import/export使用经验

    一.先创建一个小表(test_01)进行测试(主节点IP:169.254.109.130/oracle服务器IP:169.254.109.100) 1.测试连接oracle; sqoop list-t ...

  6. linux-2.6.22.6内核启动分析之Makefile文件

    学习目标 分析Makefile文件,了解内核中的哪些文件被编译,如何被编译,连接时顺序如何确定! Linux内核源码中包含很多的Makefile文件,这些Makefile文件又包含其它的一些文件,比如 ...

  7. 海思平台交叉编译curl支持SSL功能

    1.准备工具 1).交叉编译工具 2).下载libcurl和openssl源代码,我使用的是(openssl-1.0.2o.tar,curl-7.59.0.tar) 3).查看cpu详细 ~ # ca ...

  8. BurpSuite系列(十)----Extender模块(扩展器)

    一.简介 Burp在软件中提供了支持第三方拓展插件的功能,方便使用者编写自己的自定义插件或从插件商店中安装拓展插件.Burp扩展程序可以以多种方式支持自定义Burp的行为,例如:修改HTTP请求和响应 ...

  9. linux使用docker-compose部署软件配置

    本篇将分享一些 docker-compose 的配置,可参考其总结自己的一套基于docker的开发/生产环境配置.下面话不多说了,来一起看看详细的介绍吧 安装docker及docker-compose ...

  10. 获取文件属性“详细信息” - StringFileInfo

    0.什么是StringFileInfo1.获取方法2.示例代码 参考链接: 1.MS docs - GetFileVersionInfoA:https://docs.microsoft.com/zh- ...