我是靠谱客的博主 冷静招牌,最近开发中收集的这篇文章主要介绍一、Gradle构建语言概述,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、简介

本参考指南描述了组成Gradle构建语言的各种类型(types)。

Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建开源工具。它的构建脚本(script)使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,抛弃了基于XML的各种繁琐配置。Groovy的语法支持DSL的结构特性。

二、一些基础概念

在深入学习之前,你需要首先理解一些基本概念,这会对你以后编写Gradle的构建脚本有帮助。

首先,Gradle的脚本是配置脚本。当Gradle脚本执行的时候,它配置了一个特点类型的对象(it configures an object of a particular type)。例如:当一个构建脚本(a build script)执行的时候,它配置了Project这个类型的一个实例对象,这个对象叫做脚本的委托对象。

注:type就是java概念中的一个类,一个脚本执行的时候配置了特定类的一个实例对象Object。

下表列出了每种Gradle脚本类型的委托对象:

脚本类型委托的实例对象
Build scriptProject
Init scriptGradle
Settings scriptSettings

委托对象的属性和方法可供您在脚本中使用。

其次,Gradle脚本实现了Script接口,这个接口定义了许多可以在脚本中使用的属性和方法。

三、构建脚本的结构

一个构建脚本由零个或多个语句和脚本块组成。语句可以包括方法调用、属性分配和局部变量定义。脚本块是以闭包为参数的方法调用。这个闭包被视为一个配置闭包,它在执行时配置一些委托对象。下面列出了顶级脚本块:

脚本块描述
allprojects { }Configures this project and each of its sub-projects.
配置此项目及其每个子项目。
artifacts { }Configures the published artifacts for this project.
配置此项目的已发布项目。
buildscript { }Configures the build script classpath for this project.
配置此项目的构建脚本的类路径。
configurations { }Configures the dependency configurations for this project.
配置此项目的依赖项配置。
dependencies { }Configures the dependencies for this project.
配置此项目的依赖项。
repositories { }

Configures the repositories for this project.
配置此项目的存储库。

sourceSets { }

Configures the source sets of this project.
配置此项目的源集。

subprojects { }

Configures the sub-projects of this project.
配置此项目的子项目。

publishing { }

Configures the PublishingExtension added by the publishing plugin.
配置由发布插件添加的PublishingExtension。

一个构建脚本(build script)也是一个groovy脚本,因此可以包含groovy脚本中允许的元素,例如方法定义和类定义。

四、核心类型(Core types)

下面列出了Gradle脚本中使用的一些中心类型:

类型(Type)描述
ProjectThis interface is the main API you use to interact with Gradle from your build file. From a Project, you have programmatic access to all of Gradle's features.
这个接口是通过构建文件与Gradle交互的主要API。从一个Project类型的对象,您可以通过编程访问Gradle的所有功能。
TaskA Task represents a single atomic piece of work for a build, such as compiling classes or generating javadoc.
任务表示一个构建的单个原子工作,例如编译类或生成javadoc。
GradleRepresents an invocation of Gradle.
表示对Gradle的调用。
SettingsDeclares the configuration required to instantiate and configure the hierarchy of Project instances which are to participate in a build.
声明实例化所需的配置,以及配置一次构建中Project实例的层次结构。
IncludedBuildA build that is included in the composite.
引用的其它build文件。
ScriptThis interface is implemented by all Gradle scripts to add in some Gradle-specific methods. As your compiled script class will implement this interface, you can use the methods and properties declared by this interface directly in your script.
 
JavaToolChain 
SourceSet 
SourceSetOutput 
SourceDirectorySet 
IncrementalTaskInputs 
Configuration 
ResolutionStrategy 
ArtifactResolutionQuery 
ComponentSelection 
ComponentSelectionRules 
ExtensionAware 
ExtraPropertiesExtension 
PluginDependenciesSpec 
PluginDependencySpec 
PluginManagementSpec 
ResourceHandler 
TextResourceFactory 
InputChanges 

 

最后

以上就是冷静招牌为你收集整理的一、Gradle构建语言概述的全部内容,希望文章能够帮你解决一、Gradle构建语言概述所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部