乙巳🐍年

acc8226 的博客

日志是构建工具的主要“ UI”。 如果太冗长,那么真正的警告和问题很容易被隐藏起来。 另一方面,你需要相关的信息来判断事情是否出了问题。 Gradle 定义了6个日志级别,如日志级别所示。 除了通常可以看到的日志级别之外,还有两个 gradle 特定的日志级别。 这些层次是安静和生命周期。 后者是默认的,用于报告构建进度。

ERROR
Error messages

QUIET
Important information messages

WARNING
Warning messages

LIFECYCLE
Progress information messages

阅读全文 »

Copying a single file 复制单个文件

通过创建 Gradle 的内建 Copy 任务的实例并将其配置为文件的位置和要放置文件的位置,可以复制文件。 这个例子模拟了将生成的报告复制到一个目录中,这个目录将被打包到一个归档文件中,比如 ZIP 或者 TAR:

1
2
3
4
task copyReport(type: Copy) {
from file("$buildDir/reports/my-report.pdf")
into file("$buildDir/toArchive")
}

你甚至可以不使用 File ()方法直接使用这个路径,正如在文件复制深度部分前面解释的那样:

阅读全文 »

构建 Java applications

1
2
mkdir demo
cd demo

在新项目目录中,运行 init 任务,并在提示时选择 java-application 项目类型。 对于其他问题,按回车键使用默认值。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
$ gradle init
> Task :wrapper

Select type of project to generate:
1: basic
2: application
3: library
4: Gradle plugin
Enter selection (default: basic) [1..4] 2

Select implementation language:
1: C++
2: Groovy
3: Java
4: Kotlin
5: Swift
Enter selection (default: Java) [1..5] 3

Select build script DSL:
1: Groovy
2: Kotlin
Enter selection (default: Groovy) [1..2] 1

Select test framework:
1: JUnit 4
2: TestNG
3: Spock
4: JUnit Jupiter
Enter selection (default: JUnit 4) [1..4]

Project name (default: demo):

Source package (default: demo):


> Task :init
Get more help with your project: https://docs.gradle.org/5.4.1/userguide/tutorial_java_projects.html

BUILD SUCCESSFUL
2 actionable tasks: 2 executed
阅读全文 »

What plugins do 插件的作用

在项目中应用插件可以扩展项目的能力,它可以做以下事情:

  • 扩展 Gradle 模型(例如,添加可配置的新 DSL 元素)
  • 根据约定配置项目(例如添加新任务或配置合理的默认值)
  • 应用特定的配置(例如添加组织存储库或执行标准)

Types of plugins 插件的类型

在 Gradle 有两种通用的插件,脚本插件和二进制插件。 脚本插件是附加的构建脚本,用于进一步配置构建,并通常实现操作构建的声明性方法。 它们通常在构建中使用,尽管它们可以外部化并从远程位置访问。 二进制插件是实现 Plugin 接口并采用编程方法来操作构建的类。 二进制插件可以驻留在构建脚本中、项目层次结构中或外部插件罐中。

阅读全文 »
0%