浅谈Maven Wrapper
简介
开发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
到此这篇关于浅谈Maven Wrapper 的文章就介绍到这了,更多相关Maven Wrapper 内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!
相关推荐
-
python 安装virtualenv和virtualenvwrapper的方法
1. 首先介绍pip常用命令 pip安装命令: pip install package_name pip升级命令:pip install –ungrage package_name pip卸载命令:pip uninstall package_name 如 pip install django pip install -U django 2. virtualenv的安装 virtualenv的安装: $ sudo pip install virtualenv 或 $ sudo apt-get in
-
mybatis plus条件构造器queryWrapper、updateWrapper
注明:上篇文章介绍了springboot+mybatis-plus通用CRUD的用法,这篇文章我们来介绍一下mybatis-plus强大的条件构造器.mybatis-plus的版本为最新版3.0.3 .条件构造器咱们讲述queryWrapper和updateWrapper的用法.关系.以及强大之处. 首先在这里写下官方文档的链接位置,官方文档说的很详细.如果还想知道在项目中的具体用法请往下看. 一.条件构造器关系介绍 介绍 : 1.上图绿色框为抽象类abstract 2.蓝色框为正常class类
-
python中virtualenvwrapper安装与使用
virtualenv与virtualenvwrapper 当涉及到python项目开发时为了不污染全局环境,通常都会使用环境隔离管理工具virtualenv与virtualenvwrapper. virtualenv是在项目底下执行生成venv环境目录以此来进行管理,这非常适合使用诸如pycharm这种集成环境配置的开发工具:那么当通过shell来运行virtualenv时便会显得非常麻烦,因为每次shell关闭再打开后都需要重新配置环境参数. virtualenvwrapper是将所有的pyt
-
浅谈Maven Wrapper
简介 开发java项目少不了要用到maven或者gradle,对比gradle而言,可能maven要更加常用一些.要使用maven那就必要要安装maven,如果有些用户不想安装maven怎么办?或者说用户不想全局安装maven,那么可以使用项目级别的Maven Wrapper来实现这个功能. 如果大家使用IntelliJ IDEA来开发Spring boot项目, 如果选择从Spring Initializr来创建项目,则会在项目中自动应用Maven Wrapper.简单点说就是在项目目录下面会
-
浅谈Maven的安装及修改为阿里云下载依赖
使用JAVA工程管理越来越多的jar包,担心导错了,多导了,漏导了怎么办? 换一个IDE项目后项目会不会出一堆BUG,看的头皮发麻? 自己写的代码放在别人的机器上运行会不会出问题? Maven的强大毋庸置疑,当使用Maven后以上这些都不是问题,但是配置maven是一件耐心的事情,基本步骤总结如下: 一.下载 http://maven.apache.org/download.cgi 也可以直接在eclipse工具中下载,点击eclipse菜单栏Help->Eclipse Marketplace搜
-
浅谈maven单元测试设置代理
背景 环境需要设置代理才能够访问外部网络,如果只是运行java程序来访问网络,我们可以通过java -jar test.jar -DproxyHost=proxy_ip -DproxyPort=proxy_port,但如果是java的maven项目中,单元测试需要访问网络,只执行mvn test则会导致单元测试的代码无法访问网络. 解决 Maven单元测试,使用的是Surefire Maven插件.当Surefire插件fork JVM时,并不会继承所有的系统属性.因此我们可以通过命令行来如下设
-
浅谈maven的jar包和war包区别 以及打包方法
jar文件包括java普通类.资源文件和普通文件,在maven中即是打包src/main/java和src/main/resources资源文件夹下的所有文件.在打包的时候会自动生成MATA-INF文件夹,用于存储maven的pom信息和MANIFEST.MF文件.例如: war文件包含全部的web应用程序,即所有的java类,配置信息和jsp.js等静态资源.但是需要注意war引用war的时候会将应用war的资源全部拷贝到当前war的相同文件下,重名的文件会被替换.例如: war包依赖: <d
-
浅谈Maven包冲突的原理及解决方法
1.概述 Apache Maven ,是一个软件(特别是Java软件)项目管理及自动构建工具.在没有Maven的上古年代,项目中引入jar包需要手动下载一个个的去下载,但是随着代码数量的增加,引入的jar包数量自然会增加,随之而来的就是jar包冲突的问题了. 2.产生jar包冲突的原因 众所周知,一个项目中不能存在两个全限定类名一致的Class类,并且jar包的本质就是打包好的Class类文件,例如: 将 junit-jupiter-api-5.6.2.jar 文件解压后, 可以得到多个Clas
-
浅谈Maven安装及环境配置出错的解决办法
可能导致安装不成功的原因: 添加 系统变量的时候,M2_HOME路径没有在尾部加上\bin,而是把\bin在PATH路径的尾部加上了,比如下图某教程教的,这样做可能导致环境变量配置不成功. 安装和环境配置步骤 一.准备工作 1.jdk7.0以上版本 2.win10操作系统 3.maven安装包 二.解压安装包到指定文件夹 我的安装包解压到了C:\WorkSoftware\apache-maven-3.5.2 三.配置环境变量 C:\WorkSoftware\apache-maven-3.5.2
-
浅谈Maven的build生命周期和常用plugin
简介 Maven为我们封装了很多构建中非常有用的操作,我们只需要执行简单的几个mvn命令即可. 今天我们要讨论一下mvn命令之下的生命周期的构建. lifecycle和Phases 所谓lifecycle,可以理解为可以执行一组命令的集合,用来执行具体的某些操作. Maven默认有三种lifecycle:default,clean和site.default主要用来处理项目的开发,clean主要用来负责项目的清理,site主要用来生成项目的文档. lifecycle是由一个或者多个phase组成的
-
浅谈Maven镜像更换为阿里云中央仓库(精)
前言 每次update Maven Project 的时候,看着进度条寸步难行,心里憋得十分难受,明显阻碍我学习的热情. maven仓库默认在国外,使用难免很慢,尤其是下载依赖的时候,换为国内镜像,让你感受飞一般的感觉.国内支持maven镜像的有阿里云,开源中国等,这里换为阿里云的. 更换 修改maven配置文件settings.xml (当然也可以在用户home目录.m2下面添加一个settings.xml文件) $ cd $M2_HOME/conf/ $ sudo vim settings.
-
浅谈Maven环境隔离应用
前言 在大大小小的公司中,开发总是多环境的,可能是2个(dev.prod)或者是4个甚至更多(dev.prod.beta.local). 我们需要针对的配置不同环境下的服务器地址或数据库地址或属性参数等等,而Maven的环境隔离就帮我们解决了这实际性的问题,轻松解决完成环境隔离. 什么是Maven环境隔离 顾名思义,Maven环境隔离就是将开发中的环境分隔开,方便进行开发.这个在实际项目中用的还是蛮多的,如果你的项目用的Maven构建但是没用环境隔离,请立即将项目做一下环境隔离,相信我,你会回来
-
浅谈maven 多环境打包发布的两种方式
集合工程中 maven 的多环境打包发布 在一个项目的开发过程中,我们经常要进行 开发环境 , 测试环境, 正式环境 打包部署,如果每次打包过程中我们都是人为的 根据 不同 环境 去修改一些 配置文件 ,这样不但工作量太庞大,而且还容易出错,而maven的插件正好解决了我们的困扰. 1. maven 聚合工程的创建 创建过程直接忽略,看最终的结果图 第一种方式 2. 不同环境打包的配置 因为要发布一个webapp的主要配置文件集中在 web工程中,故而,相关的配置文件都在 ecps-manage
随机推荐
- python连接mysql调用存储过程示例
- Go语言使用组合的方式实现多继承的方法
- Angular 2父子组件数据传递之@ViewChild获取子组件详解
- jQuery实现可展开合拢的手风琴面板菜单
- Bootstrap select下拉联动(jQuery cxselect)
- iOS swift 总结NavigationController出现问题及解决方法
- Java硬币翻转倍数递增试算实例
- 详解js几个绕不开的事件兼容写法
- 利用node.js实现反向代理的方法详解
- JavaScript字符串常用的方法
- C#正则函数用法实例【匹配、替换、提取】
- Android ViewPager实现图片轮播效果
- 使用python Django做网页
- jQuery实现的网格线绘制方法
- python数据结构之链表详解
- 纯JS实现的批量图片预览加载功能
- 关于UTF-8的客户端用AJAX方式获取GB2312的服务器端乱码问题的解决办法
- node.js 动态执行脚本
- JS数组array元素的添加和删除方法代码实例
- C#观察者模式(Observer Pattern)实例教程