是否应将mvnw文件添加到存储库?

Tit*_*lum 16 java git spring maven spring-boot

使用start.spring.io创建spring-boot项目时,会包含一些maven包装器文件:

  • mvnw
  • mvnw.bat

在提交git repo时是否应该忽略文件?

gly*_*ing 23

一个mvnwMaven的包装脚本可以让你无需安装Maven和出现在你的PATH运行Maven的命令.它通过在PATH上查找Maven来实现,如果没有找到,它会在默认位置(您的用户主目录IIRC)下载并安装Maven.

它们很方便,但它们不一定是项目的一部分,与项目代码和配置的方式不同.换一种说法:

  • 任何给定的mnvw文件都可以用于多个不相关的项目
  • 一个mnvw文件几乎肯定不会与项目的一个版本不同

在此基础上,您可以提出不承诺 mvnw代码存储库的情况.

但是,mvnw在您的仓库中包含脚本确实具有以下好处:

  • 允许任何克隆/签出您的仓库的人来构建您的项目,而无需先安装Maven.
  • 确保使用的Maven版本是与您的项目兼容的版本.

在此基础上,您可以提交 mvnw您的代码存储库.

所以,双方都有利弊.只需选择最适合那些将使用您的回购的人的需求的一面.或者:

  • 在自述文件中加入一些内容,清楚表明(a)Maven是先决条件,(b)需要哪个版本的Maven.

... 要么:

  • 包含一个mvnw脚本.


dun*_*nni 5

这取决于您是否想使用 Maven 包装器。如果没有,那么您可以删除这些文件。如果你想使用它,那么你必须提交存储库中的文件,否则使用它没有意义。