• mvn常见参数命令讲解


    1. 关于-N

      -N,--non-recursive Do not recurse into sub-projects

      意思是,不递归到子项目(子模块)。

      举例:

      一个父项目下Father面有3个子项目A、B、C,都生成jar包,则有Father.jar、A.jar、B.jar、C.jar;
      这个时候A项目依赖了B、C项目。

      此时如果使用mvn clean install -N,则只会把Father.jar安装到本地仓库(~/.m2/repository),
      而不会安装其他三个包

      造成的问题是,如果你此时使用如下命令拷贝依赖包,则会报错:说找不到依赖包B.jar/C.jar

      mvn dependency:copy-dependencies -DoutputDirectory=$WORKSPACE/dependencies
    2. 关于-U

      -U,--update-snapshots Forces a check for missing releases
      and updated snapshots on remote repositories

      意思是:强制刷新本地仓库不存在release版和所有的snapshots版本。
      • 对于release版本,本地已经存在,则不会重复下载
      • 对于snapshots版本,不管本地是否存在,都会强制刷新,但是刷新并不意味着把jar重新下载一遍。
        只下载几个比较小的文件,通过这几个小文件确定本地和远程仓库的版本是否一致,再决定是否下载

    如图所示:只有18:32时间的文件是强制刷新下来的文件

    关于mvn各个阶段的工作

    1. mvn clean: 清除各个模块target目录及里面的内容
    2. mvn validate:
    3. mvn compile: 静态编译,根据xx.java生成xx.class文件
    4. mvn test: 单元测试
    5. mvn package: 打包,生成各个模块下面的target目录及里面的内容
    6. mvn verify:
    7. mvn install: 把打好的包放入本地仓库(~/.m2/repository)
    8. mvn site:
    9. mvn deploy: 部署,把包发布到远程仓库

    参考链接:https://www.cnblogs.com/shengulong/p/10589493.html

  • 相关阅读:
    mysql批量插入数据的基类
    mount命令解析
    常用linux命令记录
    转载一篇大神的博客文章
    linux查看网卡状态
    centos7配置网卡绑定
    coentos7安装python3
    阿里云ecs 硬盘在线扩容
    centos7安装redis5
    centos7 rpm安装nginx
  • 原文地址:https://www.cnblogs.com/xiohao/p/12078388.html
Copyright © 2020-2023  润新知