阅读更多

0顶
0踩

编程语言

原创新闻 使用gradle构建java项目

2018-07-16 13:17 by 见习记者 hw1287789687 评论(0) 有17520人浏览

gradle 是什么

gradle 是一个让构建自动化的工具,类似于maven,ant的功能.
使用gradle可以给java项目编译,单元测试,打包,或者生成可执行的jar包等

gradle的依赖环境

gradle依赖java环境,所以使用gradle前需要安装jdk 或jre

gradle 构建项目的流程

gradle的构建依赖于task, task可以指定与其他task之间的依赖关系 比如,有两个task,walk 和bike,如果指定walk依赖bike,那么 执行walk前会先执行bike.

task的来源有两种:

  1. 1.插件提供,gradle有很多现成的插件;



 

 

  1. 2.自定义:在build.gradle 文件中声明task


 

task 能实现哪些功能

下面是一些常用的基本功能

复制

 

task walk(description:'walk') {
    doLast {
        copy {
            into 'demo'
            exclude '**/.svn/**'
            from('README.md')
        }
    }
}

  

 

删除

 

task walk(description:'walk') {
    doLast {
        println 'walk...'
      
        project.delete {
            delete 'README.md'
            followSymlinks = true
        }
        
    }
}

参考:https://docs.gradle.org/current/dsl/org.gradle.api.Project.html#N1512A 

 

 

 

 

如何执行任务

方式一:使用全局命令

gradle <任务名>



 

方式二:使用项目中的脚本

./gradlew <任务名>



 

引入本地jar包

 

compile project.fileTree(dir:'/Users/whuanghkl/code/mygit/myproject/target',include:['io0007-0.0.1.jar'])

 

 

gradle的插件有哪些

参考 https://docs.gradle.org/current/userguide/userguide.html



 

如何查询依赖的版本

gradle中依赖的仓库有多种:


参考:https://docs.gradle.org/current/dsl/org.gradle.api.artifacts.dsl.RepositoryHandler.html

我们可以选择 maven仓库: 

 

repositories {
    mavenCentral()
}

 

 

那么查询依赖就和maven一样了.

生成可执行的jar包

我的项目是spring boot,所以需要引入插件'org.springframework.boot'
id 'org.springframework.boot' version '2.0.3.RELEASE'
需要在build.gradle 文件中 指定可执行jar的main class :

 

jar {
    manifest {
        attributes 'Main-Class': 'com.kunlunsoft.Application'
    }
}

 

 

执行任务bootJar 就可以生成可执行的jar包





  

gradle 与maven相比有哪些优势

  1. 因为基于 groovy,功能更强大,可以很方便的自定义任务;
  2. 添加依赖更简洁方便,maven 需要三行,gradle只需要一行;
  3. 任务的执行流程更灵活,不像maven的生命周期那么固定.

我项目中完整的build.gradle 文件如下:

 

plugins {
    id 'java'
    id 'base'
//    id 'application'
    id 'org.springframework.boot' version '2.0.3.RELEASE'
}


//mainClassName = "com.kunlunsoft.Application"
group 'com.kunlunsoft'
version '1.0.0-SNAPSHOT'

sourceCompatibility = 1.8
targetCompatibility = 1.8

repositories {
    mavenCentral()
}

jar {
    manifest {
        attributes 'Main-Class': 'com.kunlunsoft.Application'
    }
}
task walk(description:'walk') {
    doLast {
        println 'walk...'
    }
}



dependencies {
    testCompile group: 'junit', name: 'junit', version: '4.12'
    testCompile("org.springframework.boot:spring-boot-starter-test")
    //数据源
    compile 'org.springframework.boot:spring-boot-starter:1.5.14.RELEASE'
    compile 'org.springframework.boot:spring-boot-starter-web:1.5.14.RELEASE'
    compile 'org.springframework.boot:spring-boot-starter-data-redis:1.5.14.RELEASE'
    compile 'mysql:mysql-connector-java:5.1.38'

    compile project.fileTree(dir:'/Users/whuanghkl/code/myproject/target',include:['io0007-0.0.1-SNAPSHOT.jar'])
    compile 'com.google.guava:guava:23.0-rc1'
    compile 'org.apache.commons:commons-email:1.5'
    compile 'org.codehaus.jackson:jackson-mapper-lgpl:1.9.12'
    //redis
//    compile 'org.springframework.data:spring-data-redis:1.8.13.RELEASE'
    compile 'redis.clients:jedis:2.9.0'
    compile 'org.springframework.statemachine:spring-statemachine-core:1.2.0.RELEASE'
    compile 'com.alibaba:fastjson:1.2.47'

//配置mybatis
    compile "org.mybatis.spring.boot:mybatis-spring-boot-starter:1.1.1"

    compile 'org.springframework.boot:spring-boot-gradle-plugin:1.5.14.RELEASE'
//    compile 'org.springframework:springloaded:1.5.14.RELEASE'
}

 

 

参考:https://my.oschina.net/huangweiindex/blog/1844872

https://my.oschina.net/huangweiindex/blog/1842459

0
0
评论 共 0 条 请登录后发表评论

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 使用 Gradle 构建 Java 项目

    本指南将引导您使用 Gradle 构建一个简单的 Java 项目。

  • 使用Gradle构建Java项目

    这个手册将通过一个简单的Java项目向大家介绍如何使用Gradle构建Java项目。 我们将在这篇文档航中创建一个简单的Java项目,然后使用Gradle构建它。预留15分钟空闲时间一件称手的兵器(你最喜欢的IDE或者文本编辑器)...

  • java源码无lib文件夹-gs-gradle:使用Gradle构建Java项目::了解如何使用Gradle构建Java项目

    项目以进行构建。 为了保持对 Gradle 的关注,现在让项目尽可能简单。 在src/main/java/hello目录中,您可以创建您想要的任何 Java 类。 为简单起见并与本指南的其余部分保持一致,Spring 建议您创建两个类: Hello...

  • gs-gradle, 使用Gradle构建Java项目.zip

    gs-gradle, 使用Gradle构建Java项目 标记项目gradle目录你将构建什么。你需要什么。设置了项目项目。安装 Gradle找出Gradle可以做什么。构建Java代码声明依赖项使用Gradle包装程序生成项目。摘要文件另请参

  • 5分钟了解Gradle并构建java项目

    5分钟了解Gradle并构建java项目

  • 使用gradle构建Java项目

    Gradle和许多插件在一起运行。插件是Gradle的扩展,它以某种方式...大部分Java项目的构建都十分相似: 编译Java源码文件。 运行一些单元测试并且创建一个JAR文件来包含你的class文件。 Groovy通过使用Gradle的J...

  • gradle如何构建java项目

    之前的文章我们讲到了gradle的基本使用,使用gradle的最终目的就是为了构建java项目。今天本文将会详细的讲解如何在gradle中构建java项目。 构建java项目的两大插件 安装java项目的目的不同,构建java项目有两大...

  • Gradle构建 Java项目示例

    Gradle构建 Java项目,简单的把java 项目构建成jar

  • 用Gradle构建Java项目

    用Gradle构建Java项目 本指南将引导您使用Gradle构建一个简单的Java项目。 你要建什么 您将创建一个简单的应用程序,然后使用Gradle构建它。 你需要什么 大约15分钟 最喜欢的文本编辑器或IDE JDK 6...

  • gradle系列笔记一:使用gradle构建java项目

    gradle构建编译java项目

  • 《gradle教程系列》三.使用gradle构建Java项目

    0.背景一般Java项目的过程都是,下载和管理依赖jar包,编译源文件,进行单元测试,打包项目为Jar文件。单纯的使用Gradle只能做到部分功能,最常见的就是下载和管理依赖jar包等等,剩下的功能需依赖于插件才能完成。...

  • 命令构建gradle项目_使用Gradle构建项目

    Gradle 是一款基于 Groovy 语言、免费开源的构建工具,它既保持了 Maven 的优点,又通过使用 Groovy 定义的 DSL 克服了 Maven 中使用 XML 繁冗以及不灵活的缺点。安装一种方式是从 官方 下载解压然后配置环境变量。...

  • IDEA使用gradle创建java普通项目

    IDEA使用gradle创建java普通项目 一、gradle新建java项目 1.1先安装好Gradle,创建新项目,选择Gradle,选择对应的JDK,勾选Java: 1.2定义项目组织结构和项目名称 1.3 gradle工程初始化设置 1.4 指定...

  • 安装NumPy教程-详细版

    附件是安装NumPy教程_详细版,文件绿色安全,请大家放心下载,仅供交流学习使用,无任何商业目的!

  • 语音端点检测及其在Matlab中的实现.zip

    语音端点检测及其在Matlab中的实现.zip

  • C#文档打印程序Demo

    使用C#完成一般文档的打印,带有页眉,页脚文档打印,表格打印,打印预览等

  • DirectX修复工具-4-194985.zip

    directx修复工具 DirectX修复工具(DirectX repair)是系统DirectX组件修复工具,DirectX修复工具主要是用于检测当前系统的DirectX状态,若发现异常情况就可以马上进行修复,非常快捷,使用效果也非常好。

  • Python手动实现人脸识别算法

    人脸识别的主要算法 其核心算法是 欧式距离算法使用该算法计算两张脸的面部特征差异,一般在0.6 以下都可以被认为是同一张脸 人脸识别的主要步骤 1 获得人脸图片 2 将人脸图片转为128D的矩阵(这个也就是人脸特征的一种数字化表现) 3 保存人脸128D的特征到文件中 4 获取其他人脸转为128D特征通过欧式距离算法与我们保存的特征对比,如果差距在0.6以下就说明两张脸差距比较小

  • 全国大学生信息安全竞赛知识问答-CISCN 题库.zip

    ciscn 全国大学生信息安全竞赛知识问答-CISCN 题库.zip

  • JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译).zip

    JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)

Global site tag (gtag.js) - Google Analytics