maven常用命令大全

参考地址:

1.maven常用命令大全(附详细解释),https://blog.youkuaiyun.com/good_good_xiu/article/details/116740333

2.maven常用命令集合(收藏大全),https://zhuanlan.zhihu.com/p/355889432

3.Maven查看插件信息,https://blog.youkuaiyun.com/bugzeroman/article/details/120739886

4Maven(四)常用命令大全_mvn 命令-优快云博客 

一、MAVEN常用命令1

1.常用打包命令

mvn clean package -Dmaven.test.skip=true		-- 跳过单测打包
mvn clean install -Dmaven.test.skip=true		-- 跳过单测打包,并把打好的包上传到本地仓库
mvn clean deploy -Dmaven.test.skip=true			-- 跳过单测打包,并把打好的包上传到远程仓库

2.maven命令

mvn -v //查看版本 
mvn archetype:create //创建 Maven 项目 
mvn compile //编译源代码 
mvn test-compile //编译测试代码 
mvn test //运行应用程序中的单元测试 
mvn site //生成项目相关信息的网站 
mvn package //依据项目生成 jar 文件 
mvn install //在本地 Repository 中安装 jar 
mvn -Dmaven.test.skip=true //忽略测试文档编译 
mvn clean //清除目标目录中的生成结果 
mvn clean compile //将.java类编译为.class文件 
mvn clean package //进行打包 
mvn clean test //执行单元测试 
mvn clean deploy //部署到版本仓库 
mvn clean install //使其他项目使用这个jar,会安装到maven本地仓库中 
mvn archetype:generate //创建项目架构 
mvn dependency:list //查看已解析依赖 
mvn dependency:tree com.xx.xxx //看到依赖树 
mvn dependency:analyze //查看依赖的工具 
mvn help:system //从中央仓库下载文件至本地仓库 
mvn help:active-profiles //查看当前激活的profiles 
mvn help:all-profiles //查看所有profiles 
mvn help:effective -pom //查看完整的pom信息

3.注意
maven 命令要在IDEA的Terminal窗口执行
执行maven命令需要当前目录有pom依赖,可以用cd命令切换目录

4.打包时注意:

当mvn仓库里缺少jar包,同时又从中央仓库自动下载不下来的时候,就需要自己下载jar包然后放仓库里了,
但是有时候只是简单的把jar和source放仓库的文件夹下,并不管用,这个时候你可以用命令把jar把打进去:
mvn install:install-file -Dfile=D:\xxx.jar -DgroupId=commons-dbcp -DartifactId= commons-dbcp -Dversion= 1.4 -Dpackaging=jar
-Dfile 是存在本地磁盘里jar 的路径,后面的就不用说了吧!install:install-file 看清楚了!!!这个-file跟install是连着的。

mvn dependency:tree命令解决jar包冲突
当项目出现jar包冲突时,用命令mvn dependency:tree 查看依赖情况
mvn dependency:tree 查看依赖树,查看包结构间的依赖
mvn dependency:tree >d:/tmp 把结果输出到文件,
然后再pom.xml文件里排除掉冲突的jar包

二、MVN常用命令2

mvn 命令参数

mvn -v, --version 显示版本信息;

mvn -V, --show-version 显示版本信息后继续执行 Maven 其他目标;

mvn -h, --help 显示帮助信息;

mvn -e, --errors 控制 Maven 的日志级别, 产生执行错误相关消息;
mvn -X, --debug 控制 Maven 的日志级别, 产生执行调试信息;
mvn -q, --quiet 控制 Maven 的日志级别, 仅仅显示错误;

mvn -Pxxx 激活 id 为 xxx 的 profile (如有多个,用逗号隔开);

mvn -Dxxx=yyy 指定 java 全局属性;

mvn -o , --offline 运行 offline 模式, 不联网更新依赖;

mvn -N, --non-recursive 仅在当前项目模块执行命令, 不构建子模块;

mvn -pl, --module_name 在指定模块上执行命令;

mvn -ff, --fail-fast 遇到构建失败就直接退出;

mvn -fn, --fail-never 无论项目结果如何, 构建从不失败;

mvn -fae, --fail-at-end 仅影响构建结果, 允许不受影响的构建继续;

mvn -C, --strict-checksums 如果校验码不匹配的话, 构建失败;
mvn -c, --lax-checksums 如果校验码不匹配的话, 产生告警;

mvn -U 强制更新 snapshot 类型的插件或依赖库 (否则 maven 一天只会更新一次 snapshot 依赖);

mvn -npu, --no-plugin-updates 对任何相关的注册插件, 不进行最新检查 (使用该选项使 Maven 表现出稳定行为,该稳定行为基于本地仓库当前可用的所有插件版本);

mvn -cpu, --check-plugin-updates 对任何相关的注册插件, 强制进行最新检查 (即使项目 POM 里明确规定了 Maven 插件版本, 还是会强制更新);

mvn -up, --update-plugins [mvn -cpu] 的同义词;

mvn -B, --batch-mode 在非交互(批处理)模式下运行 (该模式下, 当 Mven 需要输入时, 它不会停下来接受用户的输入, 而是使用合理的默认值);

mvn -f, --file <file> 强制使用备用的 POM 文件;
mvn -s, --settings <arg> 用户配置文件的备用路径;
mvn -gs, --global-settings <file> 全局配置文件的备用路径;

mvn -emp, --encrypt-master-password <password> 加密主安全密码, 存储到 Maven settings 文件里;

mvn -ep, --encrypt-password <password> 加密服务器密码, 存储到 Maven settings 文件里;

mvn -npr, --no-plugin-registry 对插件版本不使用~/.m2/plugin-registry.xml(插件注册表) 里的配置;

mvn 常用命令

  1. 创建 Maven 的普通 java 项目:
    mvn archetype:create
    -DgroupId=packageName
    -DartifactId=projectName
  2. 创建 Maven 的 Web 项目:
    mvn archetype:create
    -DgroupId=packageName
    -DartifactId=webappName
    -DarchetypeArtifactId=maven-archetype-webapp
  3. 编译源代码: mvn compile
  4. 编译测试代码:mvn test-compile
  5. 运行测试:mvn test
  6. 产生 site:mvn site
  7. 打包:mvn package
  8. 在本地 Repository 中安装 jar:mvn install
  9. 清除产生的项目:mvn clean
  10. 生成 eclipse 项目:mvn eclipse:eclipse
  11. 生成 idea 项目:mvn idea:idea
  12. 组合使用 goal 命令,如只打包不测试:mvn -Dtest package
  13. 编译测试的内容:mvn test-compile
  14. 只打 jar 包: mvn jar:jar
  15. 只测试而不编译,也不测试编译:mvn test -skipping compile -skipping test-compile
    (-skipping 的灵活运用,当然也可以用于其他组合命令)
  16. 清除 eclipse 的一些系统设置: mvn eclipse:clean

 PS:

一般使用情况是这样,首先通过 cvs 或 svn 下载代码到本机,然后执行 mvn eclipse:eclipse 生成 ecllipse 项目文件,然后导入到 eclipse 就行了;修改代码后执行 mvn compile 或 mvn test 检验,也可以下载 eclipse 的 maven 插件。

mvn -version/-v 显示版本信息
mvn archetype:generate 创建 mvn 项目
mvn archetype:create -DgroupId=com.oreilly -DartifactId=my-app 创建 mvn 项目
mvn package 生成 target 目录,编译、测试代码,生成测试报告,生成 jar/war 文件
mvn jetty:run 运行项目于 jetty 上,
mvn compile 编译
mvn test 编译并测试
mvn clean 清空生成的文件
mvn site 生成项目相关信息的网站
mvn -Dwtpversion=1.0 eclipse:eclipse 生成 Wtp 插件的 Web 项目
mvn -Dwtpversion=1.0 eclipse:clean 清除 Eclipse 项目的配置信息 (Web 项目)
mvn eclipse:eclipse 将项目转化为 Eclipse 项目

在应用程序用使用多个存储库 

<repositories>      
    <repository>        
        <id>Ibiblio</id>        
        <name>Ibiblio</name>        
        <url>http://www.ibiblio.org/maven/</url>      
    </repository>      
    <repository>        
        <id>PlanetMirror</id>        
        <name>Planet Mirror</name>        
        <url>http://public.planetmirror.com/pub/maven/</url>      
    </repository>    
</repositories>

现需要将公司内部的jar包上传到私服仓库,供其他同事使用,此时就需要用到mvn deploy:deploy-file命令。命令:

mvn deploy:deploy-file -DgroupId=com -DartifactId=client -Dversion=0.1.0 -Dpackaging=jar -Dfile=d:\client-0.1.0.jar -DrepositoryId=maven-repository-inner -Durl=ftp://xxxxxxx/opt/maven/repository/   

发布第三方 Jar 到本地库中:

mvn install:install-file -DgroupId=com -DartifactId=client -Dversion=0.1.0 -Dpackaging=jar -Dfile=d:\client-0.1.0.jar -DdownloadSources=true  -DdownloadJavadocs=true 

mvn -e 显示详细错误 信息.
mvn validate 验证工程是否正确,所有需要的资源是否可用。
mvn test-compile 编译项目测试代码。 。
mvn integration-test 在集成测试可以运行的环境中处理和发布包。
mvn verify 运行任何检查,验证包是否有效且达到质量标准。
mvn generate-sources 产生应用需要的任何额外的源代码,如 xdoclet。

mvn 常用命令 2

mvn -v 显示版本
mvn help:describe -Dplugin=help 使用 help 插件的 describe 目标来输出 Maven Help 插件的信息。
mvn help:describe -Dplugin=help -Dfull 使用 Help 插件输出完整的带有参数的目标列

mvn help:describe -Dplugin=compiler -Dmojo=compile -Dfull 获取单个目标的信息, 设置 mojo 参数和 plugin 参数。此命令列出了 Compiler 插件的 compile 目标的所有信息
mvn help:describe -Dplugin=exec -Dfull 列出所有 Maven Exec 插件可用的目标
mvn help:effective-pom 看这个 “有效的 (effective)”POM,它暴露了 Maven 的默认设置
mvn archetype:create -DgroupId=org.sonatype.mavenbook.ch03 -DartifactId=simple -DpackageName=org.sonatype.mavenbook 创建 Maven 的普通 java 项目,在命令行使用 Maven Archetype 插件
mvn exec:java -Dexec.mainClass=org.sonatype.mavenbook.weather.Main Exec 插件让我们能够在不往 classpath 载入适当的依赖的情况下,运行这个程序
mvn dependency:resolve 打印出已解决依赖的列表
mvn dependency:tree 打印整个依赖树
mvn install -X 想要查看完整的依赖踪迹,包含那些因为冲突或者其它原因而被拒绝引入的构件,打开 Maven 的调试标记运行
mvn install -Dmaven.test.skip=true 给任何目标添加 maven.test.skip 属性就能跳过测试
mvn install assembly:assembly 构建装配 Maven Assembly 插件是一个用来创建你应用程序特有分发包的插件
mvn jetty:run 调用 Jetty 插件的 Run 目标在 Jetty Servlet 容器中启动 web 应用
mvn compile 编译你的项目
mvn clean install 删除再编译
mvn hibernate3:hbm2ddl 使用 Hibernate3 插件构造数据库

三、MVN常用命令3

在介绍 Maven 命令之前,需要从认知上理解 Maven 命令的构成。

Maven 命令主要分为两种:

    mvn 命令参数:这里涵盖了 mvn 后所有以 - 开头的参数。
    mvn 插件命令:其实我们平时使用最多的 clean、package、install 等命令都是 Maven 官方提供的插件,除此之外我们还可以自己编写插件进行扩展。

一、mvn 命令参数
    mvn -v, --version 显示版本信息。

    mvn -V, --show-version 显示版本信息后继续执行 Maven 其他目标。

    mvn -h, --help 显示帮助信息。

    mvn -e, --errors 控制 Maven 的日志级别,显示执行错误相关的消息。

    mvn -X, --debug 控制 Maven 的日志级别,显示执行调试信息。

    mvn -q, --quiet 控制 Maven 的日志级别,仅显示错误信息。

    mvn -Pxxx 激活 id 为 xxx 的 profile(如有多个,用逗号隔开)。

    mvn -Dxxx=yyy 指定 java 的全局属性。

    mvn -o, --offline 运行 offline 模式,不联网更新依赖。

    mvn -N, --non-recursive 尽在当前项目模块执行命令,不构建子模块。

    mvn -pl, --projects 用于指定要构建的模块列表(英文逗号分隔)。

    mvn -ff, --fail-fast 遇到构建失败就直接退出。

    mvn -fn, --fail-never 无论项目结果如何,构建从不失败。

    mvn -fae, --fail-at-end 仅影响构建结果,允许不受影响的构建继续。

    mvn -C, --strict-checksums 如果校验码不匹配的话,构建失败。

    mvn -c, --lax-checksums 如果校验码不匹配的话,产生告警。

    mvn -U 强制更新 SNAPSHOT 类型的插件或依赖库(否则 Maven 一天只会更新一次 SNAPSHOT 依赖)。

    mvn -npu, --no-plugin-updates 对任何相关的注册插件,不进行最新检查(使用该选项使 Maven 表现出稳定的行为,该稳定行为基于本地仓库当前可用的所有插件版本)。

    mvn -cpu, --check-plugin-updates 对任何相关的注册插件,强制进行最新检查(即使项目 POM 里明确规定了 Maven 插件版本,还是会强制更新)。

    mvn -up, --update-plugins 与 mvn -cpu 作用相同。

    mvn -B, --batch-mode 在非交互(批处理)模式下运行(该模式下,当 Maven 需要输入时,它不会停下来接收用户的输入,而是使用合理的默认值)。

    mvn -f, --file <file> 强制使用备用的 POM 文件。

    mvn -s, --settings <arg> 用户配置文件的备用路径。

    mvn -gs, --global-settings <file> 全局配置文件的备用路径。

    mvn -emp, --encrypt-master-password <password> 加密主安全密码,存储到 Maven 的 settings 文件里。

    mvn -ep, --encrypt-password <password> 加密服务器密码,存储到 Maven 的 settings 文件里。

    mvn -npr, --no-plugin-registry 对插件版本不适用 ~/.m2/plugin-registry.xml(插件注册表)里的配置。

二、mvn 插件命令
     1.介绍
        其实我们平时使用最多的 clean、package、install 等命令都是 Maven 官方提供的插件,除此之外我们还可以自己编写插件进行扩展。

官方插件清单: https://maven.apache.org/plugins/index.html

    这里我们主要讲解一下如何查看插件的官方文档,以及常用的插件命令。

    2.查看插件的使用文档
    Maven 的官方插件主要分为四类:

  • 核心插件:包括 clean、compiler、deploy、install 等。
  • 打包插件:包括 jar、war、ejb、source 等。
  • 报告插件:包括 javadoc 等。
  • 工具插件:包括 antrun、archetype、dependency、help 等。

查看 Maven 插件的官方文档,这里我们主要用到了工具插件中的 help 插件。

用法:

mvn help:describe -Dplugin=插件名

 例如:我想查看 dependency 命令的使用文档:

mvn 命令:

mvn help:describe -Dplugin=dependency

执行结果:

补充: 如果之前没有使用过 help 插件,第一次执行会先进行 Download,时间会长一点,后面就会直接执行了。

3.常用的插件命令
mvn clean:清理项目目录,删除 target 目录和生成的构建文件。

mvn compile:编译源代码,并将编译后的类文件存储在 target 目录中。

mvn test-compile:编译测试代码。

mvn test:运行项目的单元测试。

mvn site:产生 site。

mvn package:打包项目,并将生成的构建文件(例如:JAR、WAR)存储在 target 目录中。

mvn install:安装项目到本地 Maven 仓库,以供其他项目使用。

mvn deploy:将项目部署到远程仓库,例如 Maven 私服。

mvn clean install:清理项目目录并执行安装操作。

mvn clean package:清理项目目录并执行打包操作。

mvn dependency:tree:显示项目的依赖树。

mvn dependency:tree -Dverbose:显示项目的依赖树(包括传递依赖和排除依赖)。

mvn dependency:resolve:解析项目的依赖关系,并下载缺失的依赖项。

mvn archetype:create

-----mvn archetype:create -DgroupId=packageName -DartifactId=projectName:使用 Maven 的 archetype 插件,创建一个 Maven 的普通 java 项目。

----mvn archetype:create -DgroupId=packageName -DartifactId=projectName -DarchetypeArtifactId=maven-archetype-webapp:使用 Maven 的 archetype 插件,创建一个 Maven 的 Web 项目。

mvn archetype:generate:使用 Maven 的 archetype 插件,创建一个新的 Maven 项目结构。

mvn eclipse:eclipse:使用 Maven 的 eclipse 插件,生成 eclipse 项目。

mvn idea:idea:使用 Maven 的 idea 插件,生成 idea 项目。

mvn jar:jar:只打 jar 包。

mvn test -skipping compile -skipping test-compile:跳过源代码的编译和测试代码的编译,运行项目的单元测试。

mvn eclipse:clean:清除 eclipse 的一些系统设置。

mvn help:help:使用 Maven 的 help 插件,显示 Maven 帮助信息。

      以上这些命令是 Maven 中最常用的一些命令,可以根据项目需求和具体情况来选择使用。同时,Maven 还提供了许多其他命令和插件,可以根据具体需求进行查阅和使用。你可以通过运行 mvn --help 来获取所有可用的 Maven 命令,去官网插件清单查看所有可用插件。

你idea或者eclipse配置了maven的setting文件地址后,拉取jar包会默认先从本地仓库找,找不到就查看setting文件是否配置了私服仓库,有就去私服仓库找,找不到最后才到中央仓库找,中央仓库一般配置阿里云的。
<mirror>
<id>nexus</id>
<mirrorOf>*</mirrorOf>
<url>https://maven.aliyun.com</url>
</mirror>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值