11 个版本 (1 个稳定版本)
1.0.0 | 2022 年 6 月 18 日 |
---|---|
0.1.11 | 2022 年 6 月 18 日 |
0.1.10 | 2021 年 3 月 17 日 |
0.1.5 | 2020 年 12 月 29 日 |
0.1.0 | 2018 年 9 月 18 日 |
#5 in #give
每月下载 31 次
17KB
367 代码行
mvn-autoenforce
动机
管理依赖很困难,管理多个版本的依赖则更困难,传递依赖可能会泄露到你的项目中,这可能导致运行时出现未预见的副作用(有些人将这些副作用称为错误 🪳,我称其为代码调料 🌶)。
大多数人更喜欢他们的代码不带调料,按照他们预期的行为,避免这些未知副作用,对于基于 Maven 的项目,一个好的方法就是使用 RequireUpperBoundDeps
规则的 maven-enforcer-plugin
。这个插件通常在构建生命周期的 validate
阶段运行,如果它偶然遇到了冲突的依赖版本,它会给你一大堆文本,这些文本大多只会引起眼睛疲劳。解析这堵墙状文本需要花费一些时间,不幸的是,我们这些“肉机器”优化的是看更漂亮的东西。
这个 CLI 工具旨在帮助你解析这堵墙状文本,并在你的 pom 中输出有问题的依赖项的最高版本。输出使用非常新潮的标记语言 XML
安装
要求
Rust 🦀
安装
cargoinstall mvn-autoenforce
用法
运行 mvn validate | mvn-autoenforce
并将依赖项复制到你的 pom 中。
依赖项
~2.2–3.5MB
~56K SLoC