Xel*_*ian 219 classpath gradle
我是Gradle的新手,我正在阅读文档,但我不了解它的某些部分.其中一个部分与buildscript
块连接.它的目的是什么?
如果构建脚本需要使用外部库,则可以将它们添加到构建脚本本身的脚本类路径中.您可以使用buildscript()方法执行此操作,并传入一个声明构建脚本类路径的闭包.
Run Code Online (Sandbox Code Playgroud)buildscript { repositories { mavenCentral() } dependencies { classpath group: 'commons-codec', name: 'commons-codec', version: '1.2' } }
好的但是有什么区别:
repositories {
mavenCentral()
}
dependencies {
compile group: 'commons-codec', name: 'commons-codec', version: '1.2'
}
Run Code Online (Sandbox Code Playgroud)
例如,为什么有必要使用buildscript
?
Pet*_*ser 163
该buildScript
块确定哪些插件,任务类和其他类可用于构建脚本的其余部分.如果没有buildScript
块,您可以使用Gradle开箱即用的所有内容.如果您还想使用第三方插件,任务类或其他类(在构建脚本中!),则必须在buildScript
块中指定相应的依赖项.
小智 141
dependencies
和repositories
部分列出了构建源和运行源等所需的依赖项.buildscript
是build.gradle
文件本身.因此,这将包含创建RPM的依赖关系Dockerfile
,以及在所有依赖项中运行任务的任何其他依赖关系build.gradle
Dan*_*son 62
我很欣赏Peter的回答......但是对于我来说,在答案和文档中强调构建脚本的其余部分并不是很明显.
通常引入依赖功能是用于Java程序或您可能正在编写的任何其他程序.引入Spring说,不是在构建脚本中使用,而是在Java程序中使用.将它放在buildscript
闭包中可确保依赖项可在gradle构建本身中使用.不是输出程序.
Kun*_*sai 13
通过演示 Android 顶级 gradle 文件进行更多解释。
buildscript {
// this is where we are going to find the libraries defined in "dependencies block" at below
repositories {
google()
jcenter()
maven { url 'https://dl.bintray.com/kotlin/kotlin-eap' }
}
// everything listed in the dependencies is actually a plugin, which we'll do "apply plugin" in our module level gradle file.
dependencies {
classpath 'com.android.tools.build:gradle:3.4.2' // this is android gradle plugin
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" // kotlin gradle plugin
}
}
Run Code Online (Sandbox Code Playgroud)
模块级gradle文件
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
Run Code Online (Sandbox Code Playgroud)
什么是“插件”?它们只是java类,实现了Plugin接口。在该接口下,它有一个方法“apply”来添加多个不同名称的任务对象。任务是一个我们可以实现工作流程的类。例如,构建任务包含构建应用程序的流程。
那么,buildscript 有什么作用呢?它定义了在哪里可以找到插件。插件有什么作用?它包含多项任务。任务有什么作用?它为我们提供了构建、安装、lint 等功能。
我的理解可能是错误的。如果您发现任何内容有误导性,请随时纠正我。
归档时间: |
|
查看次数: |
53780 次 |
最近记录: |