zoukankan      html  css  js  c++  java
  • Maven常用命令

    maven常用命令:

    mvn  -v:查看maven版本

    mvn compile :编译,将Java 源程序编译成 class 字节码文件(一般编译模块下的src/main/java目录)

    mvn test -compile :编译测试代码

    mvn test : 运行应用程序中的单元测试(执行src/test/java/下junit的测试用例)

    mvn site : 生成项目相关信息的网站

    mvn clean :清除目标目录中(target目录)的生成结果(将以前编译得到的旧的class 字节码文件删除

    mvn package : 打包(target目录生成jar或war等文件)

    mvn install :在本地 Repository 中安装 jar(执行之前会先执行mvn package)

    mvn deploy:将打包的文件发布到远程参考,提供其他人员进行下载依赖

    mvn eclipse:eclipse :生成 Eclipse 项目文件

    mvn -Dmaven.test.skip=true : 忽略测试文档编译

    mvn dependency:list   显示所有已经解析的所有依赖

    mvn dependency:tree  以目录树的形式展现依赖,  最高层为一层依赖 其次二层依赖 三层依赖....

    mvn dependency:analyze  第一部分显示 已经使用但是未显示依赖的的  第二部分显示项目未使用的但是依赖的

    命令参数

    上面列举的只是比较通用的命令,其实很多命令都可以携带参数以执行更精准的任务。

    Maven命令可携带的参数类型如下: 

    1.   -D 传入属性参数

    比如命令:

    mvn package -Dmaven.test.skip=true

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

    2.   -P 使用指定的Profile配置

    比如项目开发需要有多个环境,一般为开发,测试,预发,正式4个环境,在pom.xml中的配置如下:

    <profiles>
          <profile>
                 <id>dev</id>
                 <properties>
                        <env>dev</env>
                 </properties>
                 <activation>
                        <activeByDefault>true</activeByDefault>
                 </activation>
          </profile>
          <profile>
                 <id>qa</id>
                 <properties>
                        <env>qa</env>
                 </properties>
          </profile>
          <profile>
                 <id>pre</id>
                 <properties>
                        <env>pre</env>
                 </properties>
          </profile>
          <profile>
                 <id>prod</id>
                 <properties>
                        <env>prod</env>
                 </properties>
          </profile>
    </profiles>
     
    ......
     
    <build>
          <filters>
                 <filter>config/${env}.properties</filter>
          </filters>
          <resources>
                 <resource>
                        <directory>src/main/resources</directory>
                        <filtering>true</filtering>
                 </resource>
          </resources>
     
          ......
     
    </build>

    profiles定义了各个环境的变量id,filters中定义了变量配置文件的地址,其中地址中的环境变量就是上面profile中定义的值,resources中是定义哪些目录下的文件会被配置文件中定义的变量替换。

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

    mvn package -P dev

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

  • 相关阅读:
    LA 3882
    Codeforces 161D
    spoj PARTIT
    uva 10496 Collecting Beepers
    uva 10130 SuperSale
    spoj 3885
    NWERC 2012 Problem I Idol
    NWERC 2012 Problem E Edge Case
    【USACO 1.3.2】修理牛棚
    【USACO 1.3.1】混合牛奶
  • 原文地址:https://www.cnblogs.com/Jason-Xiang/p/6277112.html
Copyright © 2011-2022 走看看