Gradle安装

TOC

Gradle安装

下载安装

官网下载

(需要电脑上有jdk)

国内

https://services.gradle.org/distributions/

配置环境变量

  • GRADLE_HOME:解压之后的目录(注意它的下级目录有 bin)
  • 添加到PARH:%GRADLE_HOME%\bin;
  • 验证: gradle -v

修改配置

仓库

  • 新建环境变量
GRADLE_USER_HOME
E:\data\.gradle  # 位置
  • 修改默认文件下载位置
    • 编辑bin\gradle.bat,在其中加上
set GRADLE_OPTS="-Dgradle.user.home=E:\data\.gradle"

中文问题

  • 使用构建工具gradle打包时,遇到的中文问题和解决方式(提示GBk...)
    • 对于gradle2.0以前的版本,在build.gradle的最后加上(很少,现在都到6了)
tasks.withType(Compile) {
    options.encoding = "UTF-8"
}
  • 对于gradle2.0以后的版本,在build.gradle的最后加上
tasks.withType(JavaCompile) { options.encoding = "UTF-8" }

加速

在仓库的根目录创建gradle.properties,添加

org.gradle.daemon=true

gradle项目

  • idea--file--new--gradle--java--next--设置groupId和artifactId
  • 打开Groovy的控制台:Tools--Groovy Console
  • 目录结构
    • src/main/java:放置正式代码目录
    • src/main/resouces:放置正式配置文件目录
    • src/test/java:放置单元测试代码目录
    • src/test/resources:放置测试配置文件目录
    • src/main/webapp:放置页面元素,比如:js,css,img,jsp,html等等
    • build.gradle:配置文件,类似pom.xml文件
plugins {
    id 'java'  //运行环境
}

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

/*指定所使用的仓库*/
repositories {
    mavenLocal() //默认先从本地仓库找
    mavenCentral()//中央仓库:默认下载仓库
}
/*gradle所有的jar包坐标
* 每一个jar包坐标有三个基本元素  group,name,version
* testCompile 表示这个jar包在测试的时候起作用,是jar包的作用域
* */
dependencies {
    testCompile group: 'junit', name: 'junit', version: '4.12'
    // 添加依赖:从maven仓库复制gradle的配置,粘贴即可,在.gradle\caches\modules-2\files-2.1中能看到下载的依赖
    compile group: 'org.springframework.boot', name: 'spring-boot-starter-jdbc', version: '2.0.1.RELEASE'
    compile group: 'org.apache.commons', name: 'commons-lang3', version: '3.3'

}
  • 打包:在gradle面板--项目--Tasks--build--jar

    在项目的根路径/build/libs中就会生成jar包

  • 引入依赖就可以用了
import org.apache.commons.lang3.StringUtils;

/**
 * @author jingshiyu
 * @date 2020/6/28 16:00:26
 * @desc
 */
public class Test1 {
    public static void main(String[] args) {
        String aa="121";
        if (StringUtils.isBlank(aa)){
            System.out.println("12321443243");
        }else{
            System.out.println(aa);
        }
    }
}

整合springboot项目

2.0.1版的时候,gradle使用的是5.6.4左右的,版本不能太高
案例

plugins {
    id 'org.springframework.boot' version '2.0.1.RELEASE'
    id 'io.spring.dependency-management' version '1.0.9.RELEASE'
    id 'java'
}

group = 'com.gradle'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '1.8'

configurations {
    compileOnly {
        extendsFrom annotationProcessor
    }
}

repositories {
    mavenLocal()
    maven { url 'http://maven.aliyun.com/nexus/content/groups/public/'}
    maven { url 'http://192.168.3.37:8081/nexus/content/groups/public/'}
    maven { url 'http://maven.oschina.net/content/groups/public/'}
    maven { url 'https://mirrors.huaweicloud.com/repository/maven/'}
    maven { url 'http://myrepo.net/repo/'}
    mavenCentral()
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-web'
    compileOnly 'org.projectlombok:lombok'
    annotationProcessor 'org.projectlombok:lombok'
    testImplementation 'org.springframework.boot:spring-boot-starter-test'
}

gradle多项目

1.创建一个gradle项目
2.在根目录继续创建gradle项目(会自动将这个模块添加到父模块中(在settings.gradle文件中可以看到))

rootProject.name = 'sbtest1'
include 'service1'   //子模块
include 'dao1'   //子模块

3.在父模块中添加统一的gradle配置

allprojects{
    gradle的所有配置
}
//其实就是将gradle的配置用allprojects{}包起来,这样这些配置就可以在所有模块中通用了,父模块中有的,子模块中就不需要设置了

4.子模块调用另一个子模块内容(比如service模块调用dao模块)

//service专门把这个子模块引入即可
dependencies {
    compile project(":dao1") //子模块名不清楚的,在settings.gradle中看
}




posted @ 2020-01-20 10:36  紫月java  阅读(387)  评论(0编辑  收藏  举报