sha*_*999 212 maven spring-boot
当我创建了一个春天启动应用程序,我可以看到mvnw和mvnw.cmd文件在项目的根.这两个文件的目的是什么?
Dod*_*dge 293
这些文件来自Maven包装器.它与Gradle包装器的工作方式类似.
这允许您运行Maven项目而不安装Maven并显示在路径上.如果没有找到它,则下载正确的Maven版本(据我所知,默认情况下在您的用户主目录中).
该mvnw文件适用于Linux(bash),mvnw.cmd适用于Windows环境.
要创建或更新所有必需的Maven Wrapper文件,请执行以下命令:
mvn -N io.takari:maven:wrapper
Run Code Online (Sandbox Code Playgroud)
要使用不同版本的maven,您可以按如下方式指定版本:
mvn -N io.takari:maven:wrapper -Dmaven=3.3.3
Run Code Online (Sandbox Code Playgroud)
如果您已经在项目中使用了mvnw 而不是命令,那么这两个命令都需要maven on PATH(将maven 的路径添加bin到Path系统变量上)../mvnwmvn
Mic*_*das 26
Command mvnw使用默认情况下~/.m2/wrapper首次使用时下载的Maven .
带有Maven的URL在每个项目中指定.mvn/wrapper/maven-wrapper.properties:
distributionUrl=https://repo1.maven.org/maven2/org/apache/maven/apache-maven/3.3.9/apache-maven-3.3.9-bin.zip
Run Code Online (Sandbox Code Playgroud)
要更新或更改Maven版本,请调用以下内容(请记住有关--non-recursive多模块项目的信息):
./mvnw io.takari:maven:wrapper -Dmaven=3.3.9
Run Code Online (Sandbox Code Playgroud)
或者只是.mvn/wrapper/maven-wrapper.properties手动修改.
使用Maven从头开始生成包装器(您需要在PATH运行时使用它:
mvn io.takari:maven:wrapper -Dmaven=3.3.9
Run Code Online (Sandbox Code Playgroud)
Pat*_*mil 15
该Maven的包装是需要的Maven的(或不希望在所有安装Maven用户)的特定版本的项目的最佳选择。我们可以只使用项目特定的包装器脚本,而不是在操作系统中安装它的许多版本。
mvnw:它是一个可执行的 Unix shell 脚本,用于代替完全安装的 Maven
mvnw.cmd : 适用于 Windows 环境
用例
包装器应该适用于不同的操作系统,例如:
之后,我们可以像这样为 Unix 系统运行我们的目标:
./mvnw clean install
Run Code Online (Sandbox Code Playgroud)
以及以下批处理命令:
./mvnw.cmd clean install
Run Code Online (Sandbox Code Playgroud)
如果我们在包装器属性中没有指定的 Maven,它将被下载并安装在$USER_HOME/.m2/wrapper/dists系统的文件夹中。
Maven 包装插件
Maven Wrapper 插件,用于在简单的 Spring Boot 项目中进行自动安装。
首先,我们需要进入项目的主文件夹并运行以下命令:
mvn -N io.takari:maven:wrapper
Run Code Online (Sandbox Code Playgroud)
我们还可以指定Maven的版本:
mvn -N io.takari:maven:wrapper -Dmaven=3.5.2
Run Code Online (Sandbox Code Playgroud)
选项 -N 表示 –non-recursive 以便包装器仅应用于当前目录的主项目,而不应用于任何子模块。
来源 1(进一步阅读): https : //www.baeldung.com/maven-wrapper
| 归档时间: |
|
| 查看次数: |
86254 次 |
| 最近记录: |