.mvn目录mvnw和mvnw.cmd文件说明
我们使用Maven时,基本上只会用到mvn
这一个命令。有些童鞋可能听说过mvnw
,这个是啥?
mvnw
是Maven Wrapper的缩写。因为我们安装Maven时,默认情况下,系统所有项目都会使用全局安装的这个Maven版本。但是,对于某些项目来说,它可能必须使用某个特定的Maven版本,这个时候,就可以使用Maven Wrapper,它可以负责给这个特定的项目安装指定版本的Maven,而其他项目不受影响。
简单地说,Maven Wrapper就是给一个项目提供一个独立的,指定版本的Maven给它使用。
安装Maven Wrapper
安装Maven Wrapper最简单的方式是在项目的根目录(即pom.xml
所在的目录)下运行安装命令:
mvn -N io.takari:maven:0.7.6:wrapper
它会自动使用最新版本的Maven。注意0.7.6
是Maven Wrapper的版本。最新的Maven Wrapper版本可以去官方网站查看。
如果要指定使用的Maven版本,使用下面的安装命令指定版本,例如3.3.3
:
mvn -N io.takari:maven:0.7.6:wrapper -Dmaven=3.3.3
安装后,查看项目结构:
my-project
├── .mvn
│ └── wrapper
│ ├── MavenWrapperDownloader.java
│ ├── maven-wrapper.jar
│ └── maven-wrapper.properties
├── mvnw
├── mvnw.cmd
├── pom.xml
└── src├── main│ ├── java│ └── resources└── test├── java└── resources
发现多了mvnw
、mvnw.cmd
和.mvn
目录,我们只需要把mvn
命令改成mvnw
就可以使用跟项目关联的Maven。例如:
mvnw clean package
在Linux或macOS下运行时需要加上./
:
./mvnw clean package
Maven Wrapper的另一个作用是把项目的mvnw
、mvnw.cmd
和.mvn
提交到版本库中,可以使所有开发人员使用统一的Maven版本。
这使您可以运行Maven项目,而无需安装Maven并将其显示在路径上。如果找不到正确的Maven版本(就我所知,默认情况下在你的用户主目录中),它会下载它。
该
mvnw
文件适用于Linux(bash),mvnw.cmd
适用于Windows环境。要创建或更新所有必需的Maven Wrapper文件,请执行以下命令:
mvn -N io.takari:maven:wrapper要使用不同版本的maven,可以按如下方式指定版本:
mvn -N io.takari:maven:wrapper -Dmaven=3.3.3
PATH
如果你的项目中已经有了mvnw,你可以使用这两个命令,./mvnw
而不是mvn
在命令中。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要更新或更改Maven版本,请调用以下内容(记住关于
--non-recursive
多模块项目):./mvnw io.takari:maven:wrapper -Dmaven=3.3.9或者只是
.mvn/wrapper/maven-wrapper.properties
手动修改。使用Maven从头开始生成包装器(您需要在
PATH
运行时使用它:mvn io.takari:maven:wrapper -Dmaven=3.3.9
练习
从下载练习:使用mvnw编译hello项目 (推荐使用IDE练习插件快速下载)
小结
使用Maven Wrapper,可以为一个项目指定特定的Maven版本。
.mvn目录mvnw和mvnw.cmd文件说明相关推荐
- IDEA的maven项目生成的文件详解 【.mvn、mvnw、mvnw.cmd、.gitignore、.iml、.idea、pom.xml】
.gitignore:分布式版本控制系统git的配置文件,意思为忽略提交 在 .gitingore 文件中,遵循相应的语法,即在每一行指定一个忽略规则. 如:.log./target/..idea m ...
- IDEA构建maven项目生成的文件详解 (.mvn、mvnw、mvnw.cmd、.gitignore、.iml、.idea、pom.xml)
1. .gitignore:分布式版本控制系统git的配置文件,意思为忽略提交 在 .gitingore 文件中,遵循相应的语法,即在每一行指定一个忽略规则. 如:.log./target/..i ...
- 构建项目生成的文件(.mvn、mvnw、mvnw.cmd、.gitignore)
.gitignore–分布式版本控制系统git的配置文件,意为忽略提交 在 .gitingore 文件中,遵循相应的语法,在每一行指定一个忽略规则.如: .log .temp /ven ...
- vs dll必须和exe在同一个目录_Win10系统丢失 .dll 文件的三种解决方案教程
有时候开机或打开一个软件时,系统会提示无法启动程序,这是怎么回事呢?这是因为计算机丢失某个或某些dll文件,由于系统本身不存在这些运行库文件,需要进行添加才能使用该软件. 方法一:下载丢失的.dll文 ...
- Windows批处理文件(.bat文件和.cmd文件)简单使用
cmd文件和bat文件的区别,从文件描述中的区别是,cmd文件叫做:Windows命令脚本,bat文件叫:批处理文件,两者都可以使用任意一款文本编辑器进行创建.编辑和修改,只是在cmd中支持的命令要多 ...
- Python提取Word文件中的目录标题保存为Excel文件
from docx import Document from openpyxl import Workbook from openpyxl.styles import Alignment, Borde ...
- TMS320F280049C 学习笔记9 CMD文件 程序从FLASH复制到RAM中运行
文章目录 动机 CMD文件结构与语法 MEMORY和SECTIONS指令 MEMORY指令 SECTIONS指令 程序与数据段 已初始化段 未初始化段 其他指令 #pragma指令的使用 程序从FLA ...
- DSP学习(8)—— linker.cmd文件解析
DSP学习(8)-- linker.cmd文件解析 文章目录 DSP学习(8)-- linker.cmd文件解析 前言 前言 写工程的时候遇到报内存不够的错误,出现在linker.cmd的内存分配se ...
- [CMD] DSP CMD文件详解
目录 1. CMD文件是什么? 2. CMD文件的功能 3. CMD文件的使用方法 MEMORY伪指令--指示存储空间 SECTIONS伪指令--分配段到存储空间 4. 注意事项 1. CMD文件是什 ...
最新文章
- 创新的缩略图展示javascript类库 - Kort.js
- web app会遇到那些问题
- php打印负载函数、Linux awk打印负载
- win10下 Ubuntu 18.04 LTS 的安装及 rlt8821ce网卡驱动的安装
- hdfs读写流程_一文读懂HDFS分布式存储框架分析
- java浏览文件夹_一个用java实现简单的文件浏览器
- 他受他爸影响,他爸受数学家影响,最终造出了自动旋转的房子!
- python自动化_Python 实现Excel自动化办公上
- arm linux挂载ubi,挂载ubifs文件系统分区
- 【转】搞清楚脚本中这些函数的调用规律
- Axure RP 10 安装方法
- QTreeView 详解 并设置样式表
- 开源组织之FSF与OSI,开源协议之BSD、GPL、APACHE
- kdj指标详解曲线详解分析高位徘徊是什么KDJ指标详解曲线详解分析市场特征是什么
- java安装报错循环冗余检查_数据错误 循环冗余检查怎么解决
- 泛泛而谈的菜鸟学习记录(二)—— unity静态和动态批处理
- Fabric系列 - 多通道技术(Muti-channel)
- 中国篆刻艺术孙溟㠭作品《无有中无尽藏》
- 基本DOS命令---3.修改文件夹和文件属性
- <<多模态预训练—泛读>>2022:BLIP: Bootstrapping Language-Image Pre-training for Unified Vision-Language Unders
热门文章
- 软件测试面试python一般会问什么问题_软件测试面试一定会问到的面试问题
- 总裁在线带货,可口可乐京东新通路618直播间销售额破千万
- 投资22亿元!迈瑞医疗深圳龙华基地开工,打造集团全球供应链总部 | 美通社头条...
- 2020年最新flag大赏(紧急修订版)
- ubuntu虚拟机的配置方法
- 微信小程序开发之——flex布局
- 删除数据库 [MySQL][数据库]
- My Batis 环境搭建和实例
- 未忘初心,未得始终——记搜狗两余载
- h3c虚拟化服务器配置,H3C CAS 虚拟化平台安装部署