gradle入门_Gradle入门:简介

gradle入门

Gradle是一种构建工具,可以用基于Groovy编程语言的内部DSL替换基于XML的构建脚本。

最近它吸引了很多关注,这就是为什么我决定仔细研究一下。

这篇博客文章是我的Gradle教程的第一部分,它有两个目标:

  1. 帮助我们安装Gradle
  2. 描述它的一些基本概念,这有助于我们理解本教程的未来部分。

让我们从了解如何安装Gradle开始。

安装Gradle

如果使用Windows或Linux,则可以按照以下步骤安装Gradle:

  1. 从下载页面下载二进制文件 。
  2. 解压缩该zip文件,然后将GRADLE_HOME / bin目录添加到PATH环境变量中。

如果在安装过程中遇到问题, 请查阅官方安装指南 。

如果使用的是OS X,则可以使用Homebrew安装Gradle。 我们可以通过在命令提示符处运行以下命令来做到这一点:

brew install gradle

我们可以通过在命令提示符下运行gradle -v命令来验证Gradle是否正常工作。 如果Gradle正常运行,我们应该看到以下输出(Windows和Linux用户自然会看到一些不同的输出):

> gradle -v------------------------------------------------------------Gradle 1.12------------------------------------------------------------Build time:   2014-04-29 09:24:31 UTCBuild number: noneRevision:     a831fa866d46cbee94e61a09af15f9dd95987421Groovy:       1.8.6Ant:          Apache Ant(TM) version 1.9.3 compiled on December 23 2013Ivy:          2.2.0JVM:          1.8.0 (Oracle Corporation 25.0-b70)OS:           Mac OS X 10.9.3 x86_64

让我们快速看一下Gradle构建的基本概念。

Gradle构建简介

Gradle有两个基本概念:项目和任务。 这些概念的解释如下:

  • 项目要么是我们构建的(例如,一个jar文件),要么是我们所做的(将我们的应用程序部署到生产环境)。 一个项目包含一个或多个任务
  • 任务是执行我们的构建(例如,编译我们的项目或运行测试)的原子单元工作。

那么,这些概念与Gradle构建有何关系? 好吧, 每个Gradle构建都包含一个或多个项目

这些概念之间的关系如下图所示:

gradlebuild

我们可以使用以下配置文件来配置Gradle构建:

  • Gradle构建脚本( build.gradle )指定一个项目及其任务。
  • Gradle属性文件( gradle.properties )用于配置构建的属性。
  • 在只有一个项目的构建中, Gradle设置文件( gradle.settings )是可选的。 如果我们的Gradle构建有多个项目,则必须执行此操作,因为它描述了哪些项目参与了我们的构建。 每个多项目构建都必须在项目层次结构的根项目中具有一个设置文件。

您可以通过阅读Gradle用户指南的第6章,获取有关Gradle构建脚本的更多信息。

让我们继续前进,了解如何使用Gradle插件向Gradle构建添加功能。

更简短的Gradle插件介绍

Gradle的设计理念是所有有用的功能都由Gradle插件提供。 Gradle插件可以:

  • 将新任务添加到项目。
  • 为添加的任务提供默认配置。 默认配置将新约定添加到项目中(例如,源代码文件的位置)。
  • 添加用于覆盖插件默认配置的新属性。
  • 向项目添加新的依赖项。

Gradle用户手册提供了标准Gradle插件列表 。

我们可以使用Gradle插件的名称或类型来应用Gradle插件(将插件添加到项目时使用此术语)。

通过将以下行添加到build.gradle文件中,我们可以按名称应用插件(插件的名称为foo ):

apply plugin: 'foo'

另一方面,如果要按类型应用插件(插件的类型为com.bar.foo ),则必须在build.gradle文件中添加以下行:

apply plugin: 'com.bar.foo'

您可以通过阅读Gradle用户指南的21.1应用插件来获得有关应用插件的更多信息。

今天就这些。 让我们总结一下我们从此博客文章中学到的知识。

摘要

这篇博客文章教会了我们三件事:

  • 我们了解了如何安装Gradle。
  • 我们了解了Gradle构建的基本构建基块。
  • 我们知道如何使用Gradle插件向我们的构建添加功能。

本教程的下一部分描述了如何使用Gradle创建一个简单的Java项目。

翻译自: https://www.javacodegeeks.com/2014/06/getting-started-with-gradle-introduction.html

gradle入门

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/341083.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

解决Chrome窗口总保持在最前面的问题 get rid of Chrome window always-on-top behavior

今天发现Chrome的窗口总保持在最前面,本以为是自己不小心把“总在最前”的功能打开了呢。结果找了半天也没发现Chrome有这个设置,于是想到了可能是个bug。我上网搜了下,发现大家遇到了跟我一样的问题,而且有人也向google反馈了这个…

Spring MVC – HTTP消息转换器

通常,您需要为用户提供相同的数据,但格式不同,例如JSON,PDF,XLS等。如果您的应用程序是基于Spring Framework的,则可以使用HTTP消息转换器来完成此任务。 需要将HTTP请求(或其部分)…

C++ 链表的建立与使用

#include <iostream> using namespace std; struct ListNode {int val; //存储数据ListNode *next; //next指针ListNode(int x) : val(x), next(NULL) {} }; ListNode* creatLinkedList(int arr[],int n) {if(n 0)return NULL;ListNode* head new ListNode(arr[…

排队论游乐场的游乐项目_外汇游乐场

排队论游乐场的游乐项目介绍 F X Playground是基于JavaFX的原型制作工具或实时编辑器&#xff0c;它消除了编译Java代码的步骤。 这个概念并不新鲜&#xff0c;例如在网络世界中&#xff0c;有许多HTML5 游乐场提供在线编辑器&#xff0c;使开发人员可以快速原型化或尝试各种Ja…

Node.js安装及环境配置之Windows篇

原博文链接&#xff1a;Node.js安装及环境配置之Windows篇 - 刘奇云 - 博客园 from:https://www.cnblogs.com/zhouyu2017/p/6485265.html 一、安装环境 1、本机系统&#xff1a;Windows 10 Pro&#xff08;64位&#xff09; 2、Node.js&#xff1a;v6.9.2LTS&#xff08;64位…

Java代理初学者指南

尽管Java初学者很快学会了键入public static void main来运行他们的应用程序&#xff0c;但是即使是经验丰富的开发人员也常常不知道JVM对Java流程的两个附加入口点的支持&#xff1a; premain和agentmain方法。 这两种方法都允许所谓的Java代理在驻留在其自己的jar文件中的同时…

npm WARN logfile could not create logs-dir: Error: EPERM: operation not permitted, mkdir ‘地址

场景&#xff1a;在windows系统下&#xff0c;安装node之后&#xff0c;查看npm版本&#xff0c;报错如图所示&#xff1a; 原因&#xff1a;是node目录权限不够&#xff1b; 解决方法&#xff1a;找到node目录&#xff0c;右键属性 > 安全 > 设置users用户完全控制权限…

javafx 自定义控件_JavaFX技巧10:自定义复合控件

javafx 自定义控件用JavaFX编写自定义控件是一个简单直接的过程。 需要一个控件类来控制控件的状态&#xff08;因此命名&#xff09;。 外观需要控件的外观。 而且通常不是用于自定义外观CSS文件。 控件的一种常见方法是将其正在使用的节点隐藏在其外观类中。 例如&#xff0…

虚拟机与容器 的 区别

VM和容器都可以帮助您充分利用可用的计算机硬件和软件资源。容器是块中的新孩子&#xff0c;但VM已经并且将继续在各种规模的数据中心中非常受欢迎。 如果您正在寻找在云中运行自己的服务的最佳解决方案&#xff0c;您需要了解这些虚拟化技术&#xff0c;它们如何相互比较&…

thymeleaf片段使用_Thymeleaf –片段和angularjs路由器局部视图

thymeleaf片段使用百里香叶许多很酷的功能之一就是能够渲染模板片段–我发现这是与AngularJs一起使用的特别有用的功能。 可以将AngularJS $ routeProvider或AngularUI路由器配置为返回不同“路径”的部分视图&#xff0c;使用百里香叶返回这些部分视图确实效果很好。 考虑一…

经典 Linux 协议栈——网络子系统

目录&#xff1a; 1.Linux网络子系统的分层 2.TCP/IP分层模型 3.Linux 网络协议栈 4.Linux 网卡收包时的中断处理问题 5.Linux 网络启动的准备工作 6.Linux网络包&#xff1a;中断到网络层接收 7.总结 Linux网络子系统的分层 Linux网络子系统实现需要&#xff1a; l …

Java和JavaScript之间的区别

1.简介 我们将在本文中比较Java语言和JavaScript语言。 JavaScript由Netscape开发。 它最初是用于客户端的脚本语言&#xff0c;后来又用作客户端和服务器脚本的语言。 Java由James Gosling由Sun Microsystems开发。 这些天来&#xff0c;JavaScript在服务器中以node.js的形式使…

《汇编语言》王爽实验DOS 环境 Win10 配置

下载这两个软件。 软件链接百度网盘 请输入提取码 提取码: y1j4 1. 将debug.exe放入一个文件夹中&#xff0c;用英文名&#xff0c;不要用中文。 我这里放在E盘下的Debug文件夹。 2 然后安装DOSBox软件。 安装好后在其文件目录下找到DOSBox 0.74-3 Options.bat 打开这个文件&…

硒4 Alpha –期望什么?

硒4 Alpha-期望什么&#xff1f; 早在2018年8月&#xff0c;整个测试自动化社区就受到了一个重大新闻的打击&#xff1a;Selenium的创始成员Simon Stewart在班加罗尔Selenium会议上正式确认了Selenium 4的发布日期和一些重大更新。 世界最受欢迎的Web测试自动化框架的4.0版本计…

8. 字符串转换整数 (atoi) [2022.10.21]

题目链接&#xff1a; 8. 字符串转换整数 (atoi) 一 题意介绍 请你来实现一个 myAtoi(string s) 函数&#xff0c;使其能将字符串转换成一个 32 位有符号整数&#xff08;类似 C/C 中的 atoi 函数&#xff09;。 函数 myAtoi(string s) 的算法如下&#xff1a; 读入字符串…

26. 删除有序数组中的重复项[2022.10.24]

题目链接力扣 难度&#xff1a;简单 一 题目大意 26. 删除有序数组中的重复项给你一个 升序排列 的数组 nums &#xff0c;请你 原地 删除重复出现的元素&#xff0c;使每个元素 只出现一次 &#xff0c;返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。 由于在某…

hibernate jpa_JPA / Hibernate实体状态转换的初学者指南

hibernate jpa介绍 Hibernate将开发人员的思维方式从SQL语句转移到实体状态转换。 一旦由Hibernate主动管理实体&#xff0c;所有更改将自动传播到数据库。 操作域模型实体&#xff08;及其关联&#xff09;比编写和维护SQL语句容易得多。 如果没有ORM工具&#xff0c;则添加新…

STL容器----map

一 基本概念 1. map/multimap map/multimap属于关联式容器&#xff0c;底层结构是用二叉树实现。 其中所有元素都是pair, pair中第一个元素为key&#xff08;键值&#xff09;&#xff0c;起到索引作用&#xff0c;第二个元素为value&#xff08;实值&#xff09;&#xff0…

Spring @RequestParam批注

介绍&#xff1a; Spring RequestParam批注可用于在处理程序方法中提取查询参数。 在本快速教程中&#xff0c;我们将学习其用法。 首先让我们展示一个API&#xff0c;该API返回具有给定名字和年龄的用户列表&#xff1a; RestController public class UserController {...Ge…

win10任务栏怎样居中win10任务栏居中设定教程

win11系统内置任务栏居中的设置项&#xff0c;但是win10系统没有&#xff0c;倘若win10顾客也想让自己的任务栏居中的话&#xff0c;应当怎样设置呢&#xff1f;你先撤销任务栏锁住&#xff0c;随后新建菜单栏。之后选定一个空白文件夹&#xff0c;之后任务栏就会发生两条竖杠&…