最佳答案
mvnw
Maven 包装脚本允许您运行 Maven 命令,而无需在 PATH 上安装和显示 Maven。它通过在您的 PATH 上查找 Maven 来实现,如果未找到,它会在默认位置(您的用户主目录,IIRC)下载并安装 Maven。
它们很方便,但它们不一定是您项目的一部分,与您的项目代码和配置不同。换句话说:
- 任何给定的
mnvw
文件都可以用于多个不相关的项目 mnvw
文件几乎肯定不会因项目的一个版本与另一个版本不同而有所不同
在此基础上,您可以提出 不提交 mvnw
到您的代码存储库的理由。
但是,在您的存储库中包含 mvnw
脚本确实有以下好处:
- 允许克隆/ checkout 您的存储库的任何人构建您的项目,而无需先安装 Maven。
- 确保使用的 Maven 版本是与您的项目兼容的版本。
在此基础上,您可以提出将 提交 mvnw
到您的代码存储库的案例。
所以,双方各有利弊。只需选择最适合那些将使用您的 repo 协议(protocol)的人的需求。要么:
- 在您的自述文件中包含一些内容,明确 (a) Maven 是先决条件,以及 (b) 需要哪个版本的 Maven。
... 或:
- 包含一个
mvnw
脚本。
关于java - 是否应该将 mvnw 文件添加到存储库中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47240546/