新一代构建工具gradle学习
简介:Gradle的出现,是技术发展的必然,站在了Ant、maven等构建工具的肩膀上,使用了一种强大且具有表达性的基于Groovy的领域特定语言(DSL),
使其拥有易用且灵活的方式去实现定制逻辑、方便扩展,对什么周期有更完全的控制。学习本课程后就能理解,gradle是什么,能干什么,为什么是gradle;
并掌握实际使用gradle进行项目构建、测试、打包、发布的能力。Gradle让不可能变得可能,让可能变得简单,让简单变得优雅。
public class ProjectVersion{
private int major;
private int minor; public ProjectVersion(int major,int minor){
this.major = major;
this.minor = minor;
} public int getMajor(){
major;
} public void setMajor(int major){
this.major = major
}
} ProjectVersion v1 =new ProjectVersion(1,1)
println(v1.minor)
ProjectVersion v2
println v1==v2
PS :下面 说明了 程序和 java的 差别
PS: Gradle基础知识----高级特性
//groovy特性
//1.可选类型定义,会自动的找到自己的类型,如下定义的就是int
def version = 1 // 2.assert ,断言类型
//assert version == 2 //括号是可选的
println(version)
println version
def s1 = 'imooc' //他就是一个字符串
def s2 = "i de version is ${version}" //可以加入变量
def s3 = '''my
name
is hahah''' //可以换行
//println(s1)
//println(s2)
//println(s3) // 集合
def buildTools = ['ant','maven']
buildTools << 'gradle' //添加一个元素
assert buildTools.getClass() == ArrayList //、。集合默认是ArrayList
assert buildTools.size() == 3 //map
def buildYears = ['ant':2000,'maven':2004]
buildYears.gradle = 2009
//println buildYears.ant
//println buildYears['gradle'] //打印元素
//println (buildYears.getClass()) //map默认是linkedhashmap java.util.LinkedHashMap //闭包,简单的说就是一个代码块,跟方法类似,可以有参可以无参
def c1 = {
v ->
print v
} def c2 = {
print 'hello'
} def method1(Closure closure){
closure('praram')
} def method2(Closure closure){
closure()
} method1(c1);
method2(c2);
PS: 培训说这代码时重点,没有体会到 apply plugin:'java' version = '0.1' repositories{
mavenCentral()
} dependencies{
compile 'commons-codec:commons-codec:1.6'
}
PS:调用gradle的窗口,其他的窗口不出现也可以用改解决方案
PS: 打包 War文件
PS :源文件中的Web-Inf的东西不会变,但是生成war包会多一个class 文件,其他和资源问价是一起的
新一代构建工具gradle学习的更多相关文章
- 构建工具Gradle
1.Summary 从Android团队开始宣布放弃Eclipse转投Android Studio时,构建工具Gradle进入了Android开发者的视野.而随着热修复.插件化.编译时注解的流行, ...
- 构建工具Gradle安装和简单使用
1. 安装 到gradle官网下载页 https://gradle.org/gradle-download/ 下载gradle,其中“完全版(Complete distribution)”包含除了运行 ...
- 前端自动化构建工具 gulp 学习笔记 一、
一.我对gulp的初期理解 是一种前端辅助开发工具 可以帮你把js,css,img等文件 合并.压缩,图片好像是合并为精灵图,合并为精灵图之后,还会生成一个css样式表. 官方解说是:基于流的自动化构 ...
- 初识构建工具-gradle
构建工具的作用 依赖管理 测试,打包,发布 主流的构建工具 Ant:提供编译,测试,打包 Maven:在Ant的基础上提供了依赖管理和发布的功能 Gradle:在Maven的基础上使用Groovy管理 ...
- 构建工具-----Gradle(二)-----myeclipse 10和myeclipse2015安装gradle插件----其他版本的myeclipse类似
我们需要给myeclipse安装gradle的插件.这样myeclipse就能识别到gradle项目了,直接加载进去即可. 我们先安装配置系统命令行的gradle,挺简单的,下载后配置环境变量即可,详 ...
- 项目构建工具Gradle的使用入门(参考,只表明地址)
Gradle入门介绍:简介 http://blog.jobbole.com/71999/ Gradle入门介绍:第一个Java项目 http://blog.jobbole.com/72558/ Gra ...
- 基于 Groovy 的自动化构建工具 Gradle 入门(转)
本人工作之初没有使用自动化构建,后来敏捷了,开始使用 Ant - 完全面向过程的定义步骤,不进行依赖管理.再发展到 Maven,面向对象的方式管理工程,有了依赖的管理,JAR 包统一从中央仓库获得,保 ...
- java之项目构建工具Gradle
介绍 Java 作为一门世界级主流编程语言,有一款高效易用的项目管理工具是 java 开发者共同追求的心愿和目标.显示 2000 年的 Ant,后有 2004 年的 Maven 两个工具的诞生,都在 ...
- 自动化构建工具gradle安装教程(使用sdkman安装)
gradle是什么?(wiki解释) Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化建构工具.它使用一种基于Groovy的特定领域语言来声明项目设置,而不是传统的 ...
随机推荐
- centos7 克隆 网卡无法启用
1.克隆后查看网卡无法启用,报错信息如下: Apr :: agent systemd: network.service: control process exited, code=exited sta ...
- X86汇编语言实现的贪吃蛇游戏
body, table{font-family: 微软雅黑; font-size: 13.5pt} table{border-collapse: collapse; border: solid gra ...
- zabbix安装部署(server部分)
Linux下常用的系统监控软件有Nagios.Cacti.Zabbix.Monit等,这些开源的软件,可以帮助我们更好的管理机器,在第一时间内发现,并警告系统维护人员. 今天开始研究下Zabbix,使 ...
- BCM5396的SPI理解
参考文档链接:https://pan.baidu.com/s/1kuXJmULwtjOW1TeOuTRPQQ *时钟极性和相位 BCM538X / BCM5396用于根据以下标准发送/接收SPI数据: ...
- `define、parameter、localparam三者的区别(转)
`define: 可以跨模块的定义,写在模块名称上面,在整个设计工程都有效.一旦‘define指令被编译,其在整个编译过程中都有效.例如,通过另一个文件中的`define指令,定义的常量可以被其他文件 ...
- Linux文件系统命令 umask
命令:umask 功能:指定创建文件或者文件夹的时,默认的权限设置 用法:umask -S:以rwx的方式查看创建文件的权限 umask -p:以补位的方式查看文件的权限,显示的是补位的十进制. 另外 ...
- CentOS7下-bash: nano: command not found
由于安装的是纯净版系统,运行nano命令是提示没有找到该命令,以下是解决方法,用root权限的用户运行以下命令安装nano: yum install nano 遇到询问时一路点y即可. 安装好后运行: ...
- 网络协议理论,http协议,数据结构,常用返回码
一.网络协议理论 先是DNS协议 将域名转化成IP地址 这个你要知道 域名只是人记着方便 计算机记的是IP 然后是TCPIP协议 数据在传输过程中可能要经过陆游器 涉及到的是ARP协议 将IP地址转换 ...
- linux 安装crontab执行定时任务
转载:https://www.cnblogs.com/xiaoluo501395377/archive/2013/04/06/3002602.html http://yangqijun.iteye.c ...
- 推荐系统-05-Spark电影推荐、评估与部署
一.新建scala项目 二.构造程序 代码如下 package xyz.pl8 import java.io.File import org.apache.log4j.{Level, Logger} ...