简介

开发java项目少不了要用到maven或者gradle,对比gradle而言,可能maven要更加常用一些。要使用maven那就必要要安装maven,如果有些用户不想安装maven怎么办?或者说用户不想全局安装maven,那么可以使用项目级别的Maven Wrapper来实现这个功能。

如果大家使用IntelliJ IDEA来开发Spring boot项目, 如果选择从Spring Initializr来创建项目,则会在项目中自动应用Maven Wrapper。简单点说就是在项目目录下面会多出两个文件: mvnw 和 mvnw.cmd。

Maven Wrapper的结构

mvnw是Linux系统的启动文件。

mvnw.cmd是windows系统的启动文件。

本文不会详细讲解启动文件的内部信息,有兴趣的小伙伴可以自行去研究。除了这两个启动文件,在项目中还会生成一个.mvn的隐藏文件夹。如下图所示:

我们再看下 .mvn/wrapper/maven-wrapper.properties :

distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.6.3/apache-maven-3.6.3-bin.zip
wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar

这个文件指定了maven和maven wrapper的版本。

下载Maven Wrapper

如果不是使用IntelliJ IDEA,我们该怎么样下载Maven Wrapper呢?

在程序的主目录下面:

mvn -N io.takari:maven:wrapper

如果要指定maven版本:

mvn -N io.takari:maven:wrapper -Dmaven=3.5.2

-N 意思是 –non-recursive,只会在主目录下载一次。

使用

Maven Wrapper的使用和maven命令是一样的,比如:

./mvnw clean install
./mvnw spring-boot:run

愿与诸君共进步,大量的面试题及答案还有资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化、分布式架构等这些成为架构师必备的知识体系,可以微信搜索539413949获取,最后祝大家都能拿到自己心仪的offer

Maven Wrapper简介相关推荐

  1. Spring Boot下无法加载主类 org.apache.maven.wrapper.MavenWrapperMain问题解决

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 引言: 在SpringBoot中需要使用mvnw来做相关操作,但是却有时候会报出达不到MavenWr ...

  2. maven学习记录:maven专栏简介

    maven专栏简介 一.我之前自己写的有关maven的博客: 二.Maven 特点 三.Maven POM 1.介绍POM 2.父(Super)POM 四.此专栏的意义 一.我之前自己写的有关mave ...

  3. Maven基础简介+安装说明

    Maven基础简介 Maven简介 Maven是什么 下载与安装 小节 Maven简介 问题: 传统项目管理状态分析 jar包不统一,jar包不兼容 工程升级维护过程操作繁琐 Maven是什么 Mav ...

  4. Maven Wrapper

    Maven Wrapper 1.Maven包装器 Maven用作项目的依赖管理.测试用例运行.打包.构件管理于一身; 随着maven飞速发展,它的发行版本也越来越多,如何保证你使用的Maven的版本和 ...

  5. 一文搞懂Maven Wrapper

    介绍 Maven Wrapper是受到Gradle Wrapper的启发而来的.它使Maven的一些配置 wrap 到项目里面,同时赋予了项目使用执行Maven版本的能力. 安装 方式一:在项目根目录 ...

  6. Maven Wrapper 之 SpringBoot 项目下的 mvnw.cmd

    Maven Wrapper 之 SpringBoot 项目下的 mvnw.cmd Maven Wrapper 文件 安装 Maven Wrapper 用 Maven Wrapper 打包 切换 Mav ...

  7. Maven Wrapper(mvnw)

    Maven Wrapper Maven Wrapper是一个Maven插件,用于封装提供Maven项目构建时所需要的一切.这么说可能比较抽象,来举个具体的例子吧. 一个Maven项目由多人协作维护,某 ...

  8. Apache Maven 2 简介

    级别: 中级 Sing Li (westmakaha@yahoo.com), 作家, Wrox Press 2007 年 1 月 08 日 现代软件项目不再是单个本地团队独立开发的产物.随着健壮的企业 ...

  9. 【Maven】简介信息

    Maven Apache Maven一个潜在的基于java的apache ant的构建工具的替代者.两者之间的比较: 第一:ant脚本是可以直接运行在maven中的.maven和ant最大的差别就是在 ...

最新文章

  1. Kafka和RocketMQ底层存储之那些你不知道的事
  2. Goolg Chrome 插件开发--Hello world
  3. Python3爬虫-01-简单网页爬取
  4. C++标准类型库string
  5. P1020 导弹拦截(LIS)
  6. kubernetes cpu限制参数说明
  7. [html] 你有使用过meter标签吗?说说它的用途有哪些?
  8. 如何在Windows环境下的VS中安装使用Google Protobuf完成SOCKET通信
  9. 通过延迟加载和代码拆分提高网站性能
  10. “华尔街之狼”:预计BTC价格将反弹至10万美元
  11. Leetcode 53. Maximum SubarrayJAVA语言
  12. 使用javaGUI编写检测是否有网
  13. Vue指令之v-bind
  14. One by One [ 1 x 1 ] Convolution - counter-intuitively useful
  15. 工作流:设置工作共享项目
  16. B2B,B2C,C2C,C2B,B2G
  17. Jetpack Compose UI组件入门教程
  18. 计算机网上培训6,wordexcel计算机基础培训6.pptx
  19. 蓝队-Windows操作系统
  20. 把开发板挂载到Ubuntu

热门文章

  1. 【推荐】50份2021年稀土开发者大会(PPT汇总)
  2. 项目实训- 基于unity的2D多人乱斗闯关游戏设计与开发(小地图工作前期知识:摄像机)
  3. AuthenticationManager认证
  4. Flutter文本输入框TextField的焦点控制
  5. 飞机大战游戏开发记录(Java)
  6. 1709 ltsb 内存占用_一次C++伪“内存泄漏”的排查之旅
  7. 中创|商鼎云数据丢失、隐私泄露?:我们“十目所视,十手所指”
  8. 空间坐标系及其坐标变换
  9. 职业感慨(一)---那些销声匿迹的程序员
  10. vscode中使用阿里小图标