kotlin项目开发基础之gradle初识
在Android Studio推出之后默认的打包编译工具就变为gradle了,我想对于一名Android程序员而言没人不对它知晓,但是对于它里面的一些概念可能并不是每个人都了解,只知道这样配置就ok了,既然天天在用Gradle,那对于它里面的一些概念有必要了解一下,所以下面开始:
程序猿中的原始人:
对于传统开发过程而言,一般会开发到部署会经过以下几个过程:

而上面这个过程通过eclipse就可以体会到,相比IntelliJ IDEA而言它要原始很多,所以下面用eclipse来演示一下上面的整个过程,举得例子也比较简单:
编译:
先新建一个测试工程,然后新建一个类:

测试:
当业务方法编写好之后咱们应该对其进行测试,所以测一下测试用例对该方法进行测试:

手动依赖管理:
接下来需要导入junit测试jar到工程来将此方法标识为可以测试的,如下:


接下来断言一下:

然后再右键点击运行既可查看此方法的测试情况:


当方法测试通过之后,接下来就可以编写main方法来调用该业务方法了:

打包:
当程序编写完成之后,接下来则需要将它打包并发布到服务器上,所以接下来进行打包:


此时就生成了一个可运行的jar:

然后可以执行一下它:

上传服务器:
最后就是将上面打成的jar上传到服务器则完成了整个项目的打包部署工作啦。对于上面的整个步骤大家可能觉得很顺期自然,但是当有了gradle之后,一切变得是多么的简单,所以接下来正式来接触一下它。
gradle的简单介绍:
在正式了解gradle之前先来对其历史有一个了解:

其中Ant我想这个每个学习java的人应该都或多或少接触过,需要编写一大堆xml的配置信息,而Maven既使没用过应该也听说过,最后就是既将要讨论的主题Gradle,对于它们的作用用图下图片进行说明:

可见一个工具比一个工具强大,那Gradle倒底是个什么东东呢?下面用文字来解释一下:


而gradle的官网是:https://gradle.org/,打开之后可以看到一个很醒目的图,如下:

意思就是:

其中还做了一个针对Maven做了一个对比,如下:


而且还用了一个图表来对其进行了一个更直观的对比:

另外还有其它更多的一些性能图表对比,一句话~~gradle比maven切牛逼多了,学习使用它刻不容缓。
gradle的入门演示:
接下来则正式开始使用它, 首先当然是要下载相关资源喽,依照官方文档来:


下载下来之后则将其路径加入到path当中,以便在命令行中可以直接使用gradle命令:

kotlin项目开发基础之gradle初识的更多相关文章
- com.panie 项目开发随笔_爬虫初识(2017.2.7)
(一) 本章打算研究一下爬虫.我想用爬虫简单的爬取几篇文章,以及收集一下常用网站的信息. (二) 以开源项目 JAVA爬虫 WebCollector 为源码研究.在此基础上改为适合自己项目的代码. ( ...
- 01-flask电商项目开发基础配置
本项目前端采用vue-cli的脚手架,后端采用Flask的Web框架.项目通过完成用户管理.权限管理.商品管理.订单管理.统计管理等功能,综合了前后端的知识,希望使大家都能受益. 1.使用到的技术如下 ...
- 0.1 Maven相关知识(项目开发基础)
一.Maven 1.1Maven是什么 Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的项目管理工具软件. Maven这个单词来自于意第绪语(犹太语),意为知识的 ...
- 项目开发-->基础功能汇总
祭奠曾经逝去的青春…… 1.基础功能汇总-->身份认证及用户登录模块 2.基础功能汇总-->一键登录功能汇总 3.堆和栈 4.变量
- VS Code Java 2 月更新!教育特别版:单元测试、GUI开发支持、Gradle项目创建、以及更多!
新春快乐!欢迎来到 Visual Studio Code Java 的 2 月更新,这个月我们给大家带来了一期教育特别版.每年的年初是许多学校开学的时间,为了给学生和教师提供在 Visual Stud ...
- ReadHub项目Kotlin版开发指南(三、MVP架构)
ReadHub项目Kotlin版转换指南(一.环境搭建) ReadHub项目Kotlin版转换指南(二.数据库和网络请求) ReadHub项目Kotlin版转换指南(三.MVP架构) Android ...
- 今天介绍一下自己的开源项目,一款以spring cloud alibaba为核心的微服务架构项目,为给企业与个人提供一个零开发基础的微服务架构。
LaoCat-Spring-Cloud-Scaffold 一款以spring cloud alibab 为核心的微服务框架,主要目标为了提升自己的相关技术,也为了给企业与个人提供一个零开发基础的微服务 ...
- Git项目协同开发学习笔记1:项目库开发基础git命令
这年头git基本都是项目开发的标配,之前刚好碰到了就花了两天时间系统学习了下.本文内容基本来自以下tutorial:Learn Git(建议直接去看原文,因为这个网站是有更新的).这个是我看过对git ...
- Python基础之模块:7、项目开发流程和项目需求分析及软件开发目录
一.项目开发流程 1.项目需求分析 明确项目具体功能: 明确到底要写什么东西,实现什么功能,在这个阶段的具体要询问项目经理和客户的需求 参与人员: 产品经理.架构师.开发经理 技术人员主要职责: 引导 ...
随机推荐
- 通过正则把文本里的链接加上a标签
把文本里的链接替换成a标签 function addLinks($text) { return preg_replace('/(http[s]?:\/\/[A-Za-z0-9]+\.[A-Za-z0- ...
- 有道自然语言翻译和文字识别OCR(图片文字识别)接口调用
官网 http://ai.youdao.com 文档地址 http://ai.youdao.com/docs/doc-ocr-api.s#p01 在Python中调用api. #/usr/bin/en ...
- PJzhang:crunch,一个很好的字典生成工具
猫宁!!! 之前收集子域名的时候使用过子域名挖掘机这个windows软件,查看了它所使用的字典,基本上是小写字母数字1-4位的一个合集. 36+36*36+36*36*36+36*36*36*36 ...
- 应用安全 - 工具|平台 - CDN - 使用|命令 - 汇总
简介 用途 使用缓存适应高并发请求 功能 ()抗DDOS ()隐藏真实IP 全球DNS地址分布:http://www.ab173.com/dns/dns_world.php全球IP地址段分布:http ...
- python基础之编码
ascci:字母.数字.特色字符,1个字节-8位Unicode:两个字节-16位,升级版四个字节-32位uft-8:最少一个字节-8位,英文字母-1个字节-8位,欧洲-2个字节-16位,中文-3个字节 ...
- 华为HCNA乱学Round 4:RIP
- Jenkins中shell-script执行报错sh: line 2: npm: command not found
<1>本地执行npm run build--正常 <2>查看环境变量--正常 [root@localhost bin]# echo $PATH /usr/local/node/ ...
- unsigned char 与unsigned long互换
unsigned long UCharToULong(unsigned char * pucVar ){unsigned long ulTemp=0;ulTemp=(unsigned long)(*p ...
- Django2.2 会话技术cookie session token的区别以及实例介绍
一.区别: 本人见解:使用自定义数据项进行加密,作为唯一身份识别,登陆时写入cookie(session基于这个).在显示相关数据 1.cookie 属于客户端会话技术(数据存储在客户端) 默认的Co ...
- PostgreSQL unlogged表
PostgreSQL有一种介于正常表和临时表之间的类型表,称之为unlogged表,在该表新建的索引也属于unlogged,该表在写入数据时候并不将数据写入到持久的write-ahead log文件中 ...