首页 > 其他分享 >maven 命令

maven 命令

时间:2023-09-06 10:44:39浏览次数:35  
标签:package maven 命令 mvn install test 打包

命令列表

 

命令参数

-D 传入属性参数

比如命令:

mvn package -Dmaven.test.skip=true

以“-D”开头,将“maven.test.skip”的值设为“true”,就是告诉maven打包的时候跳过单元测试。同理,“mvn deploy-Dmaven.test.skip=true”代表部署项目并跳过单元测试。

 

-P 使用指定的Profile配置
    
比如项目开发需要有多个环境,一般为开发,测试,预发,正式4个环境
profiles定义了各个环境的变量id,filters中定义了变量配置文件的地址,其中地址中的环境变量就是上面profile中定义的值,resources中是定义哪些目录下的文件会被配置文件中定义的变量替换。

通过maven可以实现按不同环境进行打包部署,命令为: 

mvn package -P dev

其中“dev“为环境的变量id,代表使用Id为“dev”的profile。

 

-e 显示maven运行出错的信息

-o 离线执行命令,即不去远程仓库更新包

-X 显示maven允许的debug信息

-U 强制去远程更新snapshot的插件或依赖,默认每天只更新一次

 

使用 .m2/settings.xml 进行deploy
mvn clean deploy -s .m2/settings.xml 

 

更多参数使用 --help 命令查看

 

maven命令package、install、deploy的区别

mvn clean package依次执行了clean、resources、compile、testResources、testCompile、test、jar(打包)等7个阶段。
mvn clean install依次执行了clean、resources、compile、testResources、testCompile、test、jar(打包)、install等8个阶段。
mvn clean deploy依次执行了clean、resources、compile、testResources、testCompile、test、jar(打包)、install、deploy等9个阶段。

package命令完成了项目编译、单元测试、打包功能,但没有把打好的可执行jar包(war包或其它形式的包)布署到本地maven仓库和远程maven私服仓库
install命令完成了项目编译、单元测试、打包功能,把打好的可执行jar包(war包或其它形式的包)布署到本地maven仓库,但没有布署到远程maven私服仓库
deploy命令完成了项目编译、单元测试、打包功能,把打好的可执行jar包(war包或其它形式的包)布署到本地maven仓库,同时部署到远程maven私服仓库


当我们运行install的时候,Maven实际上是将项目生成的构件安装到了本地仓库,即只有install了之后其它项目才能使用此项目生成的构件

 

关于 -D

mvn package -Dmaven.test.skip=true

使用maven使用package打包的时候有时候会出现如下错误:

There are test failures.
Please refer to XXX/target/surefire-reports for the individual test results
 
  • 1
  • 2

表示测试失败导致的打包失败,解决方法就是跳过test打包。

-Djavacpp.platform=linux-x86_64

设置javacpp.platform属性

当使用mvn -Djavacpp.platform=linux-x86_64构建时,您将只得到特定的平台/依赖,而没有其他平台/依赖。这也适用于所有其他可传递的依赖项,例如opencv

您可以尝试运行mvn -Djavacpp.platform=linux-x86_64 dependency:tree验证它是否有效

命令行形式(万能)

标签:package,maven,命令,mvn,install,test,打包
From: https://www.cnblogs.com/Fooo/p/17681656.html

相关文章

  • maven插件之Dependency:analyze,去掉无用maven依赖
    前言完成新功能的开发后,在发包前组长告诉我要检查maven工程的依赖,并告诉我相关指令,此文记录一下使用方式正文简介maven官网之Dependency插件Dependency插件提供了操纵artifact的能力,可以复制以及拆包本地或远程仓库的artifact到指定地点。Dependency有很多的goal,这里介绍的是de......
  • maven在使用阿里云镜像的时候下载失败
    解决方法:https://www.zhihu.com/question/350864269/answer/2808340772第一步:首先在Maven的setting.xml里设置新版HTTPS的阿里云仓库<mirror><id>aliyunmaven</id><mirrorOf>*</mirrorOf><name>阿里云公共仓库</name><url>https://maven.......
  • containerd常用命令
    背景以前都是使用docker,现在使用的k3s的容器运行时是containerd,所以也熟悉下containerd的常用命令。命令查看镜像列表crictlimageslist查看运行的容器列表crictlps查看所有容器资源情况crictlstats清理未被容器引用的镜像crictlrmi--prune......
  • shell命令概述 Shell作用:命令解释器 介于操作系统内核与用户之间,负责解释命令行 获得
    shell命令概述Shell作用:命令解释器介于操作系统内核与用户之间,负责解释命令行获得命令帮助内部命令help命令的“--help”选项使用man命令阅读手册页命令行编辑的几个辅助操作Tab键:自动补齐反斜杠“\”:强制换行快捷键Ctrl+U:清空至行首快捷键Ctrl+K:清空至行尾快捷键Ctr......
  • ES6前端技术之第二讲 let和const命令
    第二讲let和const命令前人栽树后人乘凉,前人挖坑后人遭殃!!!JS是弱类型语言,当初设计者为了使用的便捷,开发人员开心,留下了不少坑。请看JS系列坑之技术细节:var关键字挖的坑1.可以重复声明变量vara=88;vara="张老师";console.log(a);填坑:ES,let关键字......
  • Linux 命令总结
    Linux文件系统FHS3.0(FilesystemHierarchyStandard)/etc配置文件bin必要命令usr二级目录home家目录var动态数据VFS虚拟文件系统内核层抽象出通用的文件系统接口支持文件、网络、特殊文件系统抽象对象:超级快:文件系统目录项:文件路径索引节点:具体文件文件:进程打开的文件属性分层......
  • 一次尝试:一种基于Common Lisp的简易单词本命令行工具
    绪论背景英语的学习给现代中国学生带来了极大的挑战。学习英语的一种常规做法是记录纸质笔记。然而,常规的纸质笔记具有书写慢、不易修改的特点……(编不下去了)。为了简化英语单词笔记记录、查看的操作,本文基于一种简单的数据管理方法,提出一种新型单词本,即lisp-dictionary命令行工......
  • 快捷键和DOS命令
    快捷键和DOS命令快捷键win+R打开运行win+E打开我的电脑ctrl+S保存ctrl+Z撤销alt+F4关闭shift+delete永久删除ctrl+shitf+esc打开任务管理器 DOS命令#盘符切换D:#查看当前目录下的所有文件dir#切换目录cd(changedirectory)cd/dD:进入D盘cd..返回上......
  • 为什么 php 命令刷新在 Safari 中不起作用?
    在Safari浏览器中,当使用PHP命令进行刷新可能无法起作用的原因有以下几点:缓存问题:Safari浏览器可能会对页面进行缓存,以提高加载速度。这意味着当你进行PHP命令刷新时,浏览器可能仍然加载缓存的页面而不是重新请求服务器。你可以尝试在刷新页面时使用Command+Shift+R快捷......
  • MySQL常见命令及约束超详细(二)续
    查看数据表有四种方法:① SHOWCOLUMNSFROMtbl_name[FROMdb_name];②SHOWCOLUMNSFROM表名;③DESC表名;④DESCRIBE 表名;建议用第三种方便记忆添加表中新字段ALTERTABLE表名add字段名数据类型(数据范围);修改表中新字段ALTERTABLEtbl_nameCHANGE旧列名新列名新......