当前位置: 首页 > news >正文

Gradle学习笔记:Gradle的使用方法

文章目录

    • 1.初始化项目
    • 2.构建脚本语言选择
    • 3.项目命名
    • 4.项目构建过程

1.初始化项目

创建一个test空文件夹,在该文件夹下打开终端,并执行命令:gradle init.
会有一个选项让你选择项目的类型。下面是每个选项的含义和用途:

  • basic:基本项目。这是一个最简单的项目类型,适用于创建简单的Java应用程序或库。

  • application:应用程序项目。这个选项适用于创建一个可以独立运行的应用程序,例如一个命令行工具或一个桌面应用程序。

  • library:库项目。这个选项适用于创建一个可以被其他项目引用的库,例如一个Java类库或一个Android库。

  • Gradle plugin:Gradle插件项目。这个选项适用于创建一个自定义的Gradle插件,用于扩展和定制Gradle构建系统的功能。

2.构建脚本语言选择

  • 在Gradle中,可以选择使用Kotlin或Groovy作为构建脚本DSL。这两种DSL都有各自的优点和用途。

  • 如果你熟悉Kotlin语言,选择Kotlin作为构建脚本DSL可能更适合你。

  • Kotlin提供了更强大的类型检查和静态分析,使得构建脚本更加健壮和可维护。

  • Kotlin还提供了更简洁的语法和更好的IDE支持,使得编写和调试构建脚本更加方便。

  • 如果你熟悉Groovy语言,选择Groovy作为构建脚本DSL可能更适合你。

  • Groovy的语法更加灵活和简洁,编写构建脚本更方便和快速。

  • Groovy在Gradle社区中更为流行,有更多的资源和插件可供使用。

  • 总之,选择哪种语言作为构建脚本DSL取决于你的个人偏好和项目需求。

  • 如果需要更强大的类型检查和静态分析,那么选择Kotlin。

  • 如果需要更灵活和简洁的语法,那么选择Groovy。
    这里我们选择basic,脚本构建语言选择Groovy,生成的目录效果截图如下。
    在这里插入图片描述

3.项目命名

  • 输入项目名称test_gradle, 然后回车确定。
  • “Generate build using new APIs and behavior" 用于指定是否使用新的API和行为来生成构建。默认情况下,该选项是关闭的(即默认值为"no”),如果选择启用该选项(即选择"yes"),则Gradle将使用最新的API和行为来生成构建。这可能会导致一些功能在未来的次要版本中发生变化。我们这里输入yes。

注意,具体的API和行为变化取决于Gradle的版本和您的构建脚本中使用的插件和功能。
在这里插入图片描述
这样所有的初始阶段的构建就算完成了,生成如下目录结构。
在这里插入图片描述

├── .gradle
├── gradle
│   └── wrapper
|       └── gradle-wrapper.jar          // 下载所需Gradle
|       └── gradle-wrapper.properties   // 配置文件
├── build.gradle      // 用于定义项目的构建过程、依赖关系和其他配置选项
├── gradle.properties //  定义各种全局属性,比如版本号、应用名称、依赖库版本等
├── gradlew         // Linux 可执行脚本
├── gradlew.bat     // Windows 可执行脚本
└── settings.gradle // 构建配置文件。定义Gradle项目的结构和模块

4.项目构建过程

执行gradle build命令,会在当前目录中查找名为build.gradle或build.gradle.kts的构建脚本文件,并根据其中的内容执行构建任务。构建脚本定义了项目的结构、依赖关系、任务和插件等信息。构建过程会自动下载依赖项,并执行编译源代码、运行单元测试、生成文档和打包可执行文件等。

http://www.lryc.cn/news/287942.html

相关文章:

  • 少儿编程 2023年12月电子学会图形化编程等级考试Scratch二级真题解析(选择题)
  • 基于Java+SpringMvc+vue+element实现上海汽车博物馆平台
  • Sybase PowerDesigner15安装配置
  • 基于物联网设计的水稻田智能灌溉系统(STM32+华为云IOT)
  • 【数据结构】数据结构初识
  • java多线程测试websocket demo(使用文件流)
  • Tosei 自助网络店铺管理系统network_test.php_RCE漏洞复现
  • uni-app 国际化
  • git:git reset 和 git revert
  • LeetCode:670. 最大交换(Java 贪心)
  • 【STM32】STM32学习笔记-Unix时间戳(41)
  • 2016年认证杯SPSSPRO杯数学建模B题(第一阶段)低分辨率下看世界全过程文档及程序
  • 16、Kafka ------ SpringBoot 整合 Kafka (配置 Kafka 属性 及对应的 属性处理类 解析)
  • 【蓝桥杯选拔赛真题61】python偶数平方 第十五届青少年组蓝桥杯python 选拔赛比赛真题解析
  • 智能语音识别源码系统+语义理解+对话管理+语音合成 带完整的搭建教程
  • cdh6.3.2的hive配udf
  • 在DevEco开发工具中,使用Previewer预览界面中的UI组件
  • 【蓝桥杯冲冲冲】旅行计划
  • Ultraleap 3Di配置以及在 Unity 中使用 Ultraleap 3Di手部跟踪
  • HarmonyOS鸿蒙学习基础篇 - Text文本组件
  • pytorch学习笔记(十一)
  • 【并发编程】 synchronized的普通方法,静态方法,锁对象,锁升级过程,可重入锁,非公平锁
  • jQuery 删除元素 —— W3school 详解 简单易懂(十四)
  • 在 Linux 上搭建 Java 环境
  • 深度学习-Pytorch如何保存和加载模型
  • 2.数据结构 顺序表(自留笔记)
  • 将python打包成exe文件
  • 大数据处理,Pandas与SQL高效读写大型数据集
  • 【2024年5月备考新增】《软考高项论文专题 (2)论文背景(合集)》
  • Mysql复习1--理论基础+操作实践--更新中