MavenMaven常用命令

Posted iLisa

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MavenMaven常用命令相关的知识,希望对你有一定的参考价值。

一:Maven常用命令

mvn  -version    :显示版本信息

mvn  clean   :清理项目产生的临时文件,一般是模块下的target目录

mvn  compile  :编译源代码,一般编译模块下的src/main/java目录

mvn  package  :项目打包工具,会在模块下的target目录生成jar或war等文件

mvn  test    :测试命令或执行src/test/java下junit的测试用例

mvn  install  :将打包的jar/war 文件复制到你的本地仓库中,供其他项目模块使用

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

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

mvn  eclipse:eclipse    :将项目转化为eclipse项目

mvn  dependency:tree   :打印出项目的整个依赖树

mvn  archetype:generate   :创建Maven的普通java项目

mvn  tomcat7:run     :在tomcat容器中运行web应用

mvn jetty:run     :调用jetty插件的Run目标在jetty Servlet容器中启动web应用

注意:运行maven命令的时候,首先需要定位到maven项目的目录,也就是项目的pom.xml文件所在的目录,否则,必通过参数来指定项目的目录

 

二:命令参数

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

-D传入属性参数

列:   mvn   package  -Dmaven.test.skip=true;

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

-P使用指定的Profile配置

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

<profiles>
     <profile>
            <id>dev</id>
            <properties>
                   <env>dev</env>
            </properties>
            <activation>
                   <activeByDefault>true
  ......
  </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 -Pdev -Dmaven.test.skip=true
表示打包本地环境,并跳过单元测试

以上是关于MavenMaven常用命令的主要内容,如果未能解决你的问题,请参考以下文章

MavenMaven项目的创建(命令myeclipse)及生命周期

提效小技巧——记录那些不常用的代码片段

mavenmaven自带的插件

Maven学习笔记

mavenmaven各种奇葩问题

Mavenmaven 插件开发实战