#gradle #utils #chver

bin+lib gradle-util-rs

用 Rust 编写的 Gradle 工具

5 个版本

0.1.0-alpha.72022 年 8 月 4 日
0.1.0-alpha.62022 年 7 月 8 日
0.1.0-alpha.52022 年 6 月 18 日
0.1.0-alpha.12022 年 1 月 18 日
0.1.0-alpha.02022 年 1 月 15 日

#5#gradle

MIT/Apache

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:递归监视 path1path2 下的 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