5 个版本
0.1.0-alpha.7 | 2022 年 8 月 4 日 |
---|---|
0.1.0-alpha.6 | 2022 年 7 月 8 日 |
0.1.0-alpha.5 | 2022 年 6 月 18 日 |
0.1.0-alpha.1 | 2022 年 1 月 18 日 |
0.1.0-alpha.0 | 2022 年 1 月 15 日 |
#5 在 #gradle
16KB
244 行
gradle-util-rs
用 Rust 编写的 Gradle 工具。
注意,该项目仍处于 alpha 阶段。功能和行为可能会改变。
安装
您可以在 发布页面 找到预构建的二进制文件。您可以通过以下命令构建和安装它:cargo install gradle-util-rs --version 0.1.0-alpha.7
。
用法
USAGE:
gur <SUBCOMMAND>
OPTIONS:
-h, --help Print help information
-V, --version Print version information
SUBCOMMANDS:
chver Change the gradle wrapper version
help Print this message or the help of the given subcommand(s)
set-new Watch for the new Gradle project and set the gradle version
set-new
这是作为 IDEA-177325 问题的解决方案。它监视名为 gradle.properties
的文件创建,并在对应的路径下使用某个 Gradle 版本创建 Gradle 包装器属性。这样,一旦 IntelliJ IDEA 创建了一个新项目,Gradle 版本就会设置为所需的版本。
示例
gur set-new 7.3.3 path1 path2
:递归监视 path1
和 path2
下的 Gradle 项目创建,并使用 Gradle 版本 7.3.3
为新项目创建 Gradle 包装器属性。
chver
此子命令用于更新当前项目的 Gradle 包装器版本。它本质上调用 ./gradlew wrapper --gradle-version <version>
。
当启用 yolo
标志时,它将首先将 gradle-wrapper.properties
的内容更新为新版本,然后运行包装器任务。这样,旧版本的 Gradle 分发就不会被下载。但可能会有潜在问题。
示例: gur chver 7.3.3 --yolo
为什么是 Rust?
您可能会惊讶,Gradle 工具是用 Rust 而不是 Java 或其他 JVM 语言编写的。主要原因是因为 Gradle 已经需要一个 Java 实例来运行。我不想再有一个 Java 进程。相反,让它尽可能轻量。
选择Rust的原因是它的思维模型与Gradle中主要使用的Kotlin语言非常相似。Kotlin中的许多构建块,如数据类、密封类和可空类型,在Rust中都有对应的,例如struct、enum和option。
依赖项
~4-13MB
~143K SLoC