内容简介:gradle 是一个让构建自动化的工具,类似于maven,ant的功能.使用gradle可以给java项目编译,单元测试,打包,或者生成可执行的jar包等gradle依赖java环境,所以使用gradle前需要安装jdk 或jre
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.插件提供,gradle有很多现成的插件 ;
- 2.自定义:在build.gradle 文件中声明task
task 能实现哪些功能
下面是一些常用的基本功能
复制
<strong>task walk(description:'walk') {
doLast {
copy {
into 'demo'
exclude '**/.svn/**'
from('README.md')
}
}
}</strong>
删除
<strong>task walk(description:'walk') {
doLast {
println 'walk...'
project.delete {
delete 'README.md'
followSymlinks = true
}
}
}</strong>
如何执行任务
方式一:使用全局命令
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相比有哪些优势
- 因为基于 groovy,功能更强大,可以很方便的自定义任务;
- 添加依赖更简洁方便,maven 需要三行,gradle只需要一行;
- 任务的执行流程更灵活,不像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
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 《从零构建前后分离的web项目》实战 -5分钟快速构建炒鸡规范的VUE项目骨架
- golang构建项目的脚本
- flask蓝图构建小项目
- vueSSR: 从0到1构建vueSSR项目 --- 路由的构建
- Web 前端项目的构建工具
- 使用 Maven 构建 Java 项目
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
疯狂科学家大本营
Bei Er Fei Ao Er / 本书翻译组 译、黄晓庆 周宇煜 张为民 审译 / Science Press / 2012-1-5 / 48.00元
美国最棒的创意工场不是贝尔实验室,不是硅谷,也不是麻省理工学院的媒体实验室,而是由五角大楼领导的绝密军事机构DARPA——国防高级研究计划局。DARPA是由美国前总统艾森豪威尔建立的军事部门,创建的目的是为了回应苏联的太空计划。 虽然DARPA属于政府机构,但是没有冷冰 冰的氛围和官僚做派,那里的科学家偏爱牛仔裤和运动鞋。不过他们最爱的还是在各个领域寻找颠覆性创意。从航空航天、IT,到能源领......一起来看看 《疯狂科学家大本营》 这本书的介绍吧!