mvn常用指令记录
maven工程版本号更新:
---------------------------------------------------------------------------------------------------------
升级maven工程及子模块的版本号
解决办法:先把parent project更新到指定version,然后再更新子模块,让其与父模块的版本号保持一致:
- mvn versions:set -DnewVersion=1.0.1-SNAPSHOT
- mvn -N versions:update-child-modules
- 执行后maven会将pom.xml保留一个备份:pom.xm.versionsBackup
- 确认升级版本无问题后,执行mvn versions:commit 确认升级,去掉备份的pom.xml.versionsBackup
---------------------------------------------------------------------------------------------------------
在根目录下统一修改版本号:
把父模块更新到指定版本号,然后更新子模块,与父模块有相同的版本号
mvn versions:set -DnewVersion=1.0.1-SNAPSHOT 和 mvn -N versions:update-child-modules
注意,如果子模块的版本号已经与父模块不一致,则先运行后面一条命令统一,在更新父模块版本。
清理项目生产的临时文件,一般是模块下的target目录
测试命令,或执行src/test/java/下junit的测试用例.
将打包的的jar/war文件复制到你的本地仓库中,供其他模块使用
跳过测试(同时会跳过test compile)
mvn eclipse:eclipse
生成eclipse配置文件,导入到eclipse开发,如果是使用m2eclipse插件,则可以不用此命令.直接使用插件导入到eclipse进行开发
注:通过次命令生产的项目,需要在eclipse中配置M2_REPO的命令,指向你的本地仓库文件夹.
mvn eclipse:m2eclipse
生成eclipse配置文件,该配置文件需依赖eclipse 中有m2eclipse
-DdownloadSources=true 下载依赖包的源码文件
-Declipse.addVersionToProjectName=true 添加版本信息到项目名称中
清除eclipse的项目文件:
mvn eclipse:clean
maven-jetty-plugin插件命令:
mvn jetty:run
可以直接用jetty的服务器运行
注:此命令只适用于war的模块,即web模块.
maven-archetype-plugin 插件命令:
mvn archetype:generate
模块创建命令,
执行命令后,会提示选择创建项目的模版,这里选18(maven-archetype-quickstart)
后面会提示你输入groupId(包存放的路径):
eg:com.test
提示输入artifactId(模块名称):
eg:test-core
提示输入version(版本):
1.0.0-SNAPSHOT
提示输入package(指项目中基本的包路径):
eg:com.test
提示确认,回车即可
Maven 版本管理
maven-release-plugin插件
说明:
发行版本,可与scm工具集成,来提供版本管理.不等同与版本控制.允许是必须有goal.两个常用的goal如下:
命令:
mvn release:clean
清理release操作是遗留下来的文件
命令:
mvn release:branch
说明:
创建分支,会在分支下创建执行的分支路径
-DbranchName=xxxx-100317 分支中的名称
-DupdateBranchVersions=false 是否更新分支的版本信息,默认为false
-DupdateWorkingCopyVersions=false 是否更新主干的版本信息,默认为true
命令:
mvn release:prepare
创建标记,会有交互过程,提示tag中pom的版本及trunk下的新版本号,每个模块都会询问,默认是最小版本号+1
-Dtag = 4.4.0 将在tags创建该名称文件夹
-DdryRun=true 检查各项设置是否正确,可做测试用,会产生一些修改的配置文件信息.
命令:
mvn release:perform
次命令会自动帮我们签出刚才打的tag,然后打包,分发到远程Maven仓库中
Maven站点报表
mvn site 生产项目报表
mvn project-info-reports:dependencies 生成项目依赖的报表
依赖命令
maven查看依赖类命令
查看依赖
mvn dependency:resolve
查看项目依赖情况
mvn dependency:tree
打印出项目的整个依赖树
mvn dependency:analyze
帮助你分析依赖关系, 用来取出无用, 重复依赖的好帮手
mvn install -X
追踪依赖的完整轨迹
生命周期
resource->compile->process-classes->process-test-resources->test-compile->test->prepare-package->package
resources:resources 绑定在resource处理阶段, 用来将src/main/resources下或者任何指定其他目录下的文件copy到输出目录中
resources:testResources 将test下的resources目录或者任何指定其他目录copy到test输出目录下
compiler:testCompile 将测试类编译(包括copy资源文件)
surefire:test 运行测试用例
jar:jar 打jar包
maven2学习总结(5.使用Maven打包并安装到本地库) - 跳刀的兔子 - 博客园
http://www.cnblogs.com/shipengzhi/archive/2011/05/17/2048836.html
mvn常用指令记录的更多相关文章
- MATLAB常用指令记录
help + 'command name' % 查询指令用法 Ctrl + Break % 强制终止程序运行 Shift + Enter % command window下换行不运行指令 M'; % ...
- angular2.0学习笔记4.npm常用指令记录及angular语法
以下命令,都需要在命令行窗口中,先切入到项目文件夹目录,再执行 1.npm start 这个命令会在“监听”模式下运行TypeScript编译器,当代码变化时,它会自动重新编译. 同时,该命令还会在浏 ...
- linux常用指令学习记录
前言 本文主要为学习贴,用来记录一些 linux上的常用指令 以供参考. 文件内容查看 cat 从上往下阅读文件内容 cat [-AbEnTv] ${FILE_NAME) cat -n /etc/is ...
- ImageMagick常用指令详解
Imagemagick常用指令 (ImageMagick--蓝天白云) (ImageMagick官网) (其他比较有价值的IM参考) (图片自动旋转的前端实现方案) convert 转换图像格式和大小 ...
- iOS开发——源代码管理——git(分布式版本控制和集中式版本控制对比,git和SVN对比,git常用指令,搭建GitHub远程仓库,搭建oschina远程仓库 )
一.git简介 什么是git? git是一款开源的分布式版本控制工具 在世界上所有的分布式版本控制工具中,git是最快.最简单.最流行的 git的起源 作者是Linux之父:Linus Bened ...
- HBase shell 常用指令
HBase shell 常用指令 连接HBase $ ./bin/hbase shell 打开帮助 hbase(main):001:0> help 创建表 hbase(main):003:0&g ...
- Docker的使用初探(一):常用指令说明
目录 Docker的使用初探(一):常用指令说明 为什么要用Docker Docker的安装与简单使用 国内镜像加速 常用指令 Docker的使用初探(一):常用指令说明 前几个星期实践的了,再不记录 ...
- Docker Compose 配置文件常用指令
Docker Compose 配置文件常用指令 YAML文件格式及编写注意事项 YAML是一种标记语言很直观的数据序列化格式,可读性高.类似于XML数据描述语言,语法比XML简单的很多. YAML数据 ...
- Git版本控制原理和常用指令说明
平时在Android Studio开发Android项目,习惯了点击右键或图标直接拉新fetch,pull,commit和push.但是必要的时候还得在终端输入命令行.比如正在开发新版本v3.0,老板 ...
随机推荐
- ssh-copy-id
建立无密码登录是经现root成功普通用户失败, chmod 0600 authorized_keys setenforce 0 ssh-copy-id server2 ssh-add ~/.ss ...
- 一键生成JNI头文件方法二
经常使用java的同学一定都接触过JNI(Java Native Interface)吧.JNI为我们提供了java<---->C/C++之间的接口,使得我们可以在java中调用C程序,以 ...
- PAT1012
To evaluate the performance of our first year CS majored students, 为了计算第一年计算机科学学生的表现 we consider the ...
- ural1090 In the Army Now
In the Army Now Time limit: 1.0 secondMemory limit: 64 MB The sergeant ordered that all the recruits ...
- Struts2---声明式异常处理
在service方法里 throw抛出一个异常, 然后再方法声明上加上throws: public List<Category> list() throws SQLException{ C ...
- linux权限---【600,644,700,755,711,666,777】 - - 博客频道 - CSDN.NET
body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...
- CodeForces 617A Elephant
C语言语法入门题 #include<cstdio> #include<cstring> #include<vector> #include<cmath> ...
- 关于Discuz与jQuery冲突问题的亲测解决方法
最近的一个项目整合dede和discuz程序,客户要求风格统一,所以有很多样式及特效都是要公用的.其中jQuery库定义的函数$()正好与discuz的comme.js中函数一样,这样就冲突了,导致d ...
- phpcms v9 在当前栏目下获取父栏目与当前栏目的名称与连接
<a href="#" target="_blank">首页</a> > <a href="{$CATEGORYS ...
- [Lua]Mac系统上安装Lua环境
1.下载 Lua语言的官方网站 http://www.lua.org/ 下载最新版本的Lua环境 2.安装 解压下载包lua-5.3.1.tar.gz 打开终端Terminal 使用cd命令进入该目录 ...