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。

 

posted @ 2017-01-12 10:39  大象踢足球  阅读(279)  评论(0编辑  收藏  举报