`
uule
  • 浏览: 6311135 次
  • 性别: Icon_minigender_1
  • 来自: 一片神奇的土地
社区版块
存档分类
最新评论

Maven命令

 
阅读更多

Maven常用命令

执行maven的常用命令都需要从命令行进入到项目的根目录下执行.现列出maven的常用命令如下所示:

 mvn clean  清空产生的项目命令

清空项目target目录下classes目录、test-classes目录下的class文件.

 

 mvn eclipse:eclipse

 将项目(java项目或者web项目)编程eclipse项目

 

 mvn clean compile 

 编译项目命令 

清空项目target目录下的classes目录下的class文件,并重新编译项目。

 

 mvn clean test 

 执行测试用例命令

清空项目target目录下的classes目录下的test-classes文件,清空并执行测试用例。

 

 mvn clean package 打包命令

默认将项目打包成jar包,也可以在pom文件中指定打包成其他包。如war包,打包成功后,war包输出到项目的target目录下。

 

 mvn clean install 安装命令

将项目输出的war包或jar包安装到maven的本地仓库中。当执行这个命令后,其他的maven项目才能使用这个war包或jar包(特别是项目之前有依赖的)。

 

注意:执行mvn clean test命令的时候,会先执行mvn compile命令的,执行mvn clean package命令的时候,会先执行mvn compile和mvn test命令的,执行mvn clean install命令的时候,会先执行mvn clean package命令。

 

 mvn tomcat:run  运行tomcat容器命令

 mvnDebug tomcat:run  debug模式下运行tomcat容器命令

 

================================================

mvn compile  编译主程序源代码,不会编译test目录的源代码。第一次运行时,会下载相关的依赖包,可能会比较费时间。

 

mvn test-compile  编译测试代码,compile之会后生成target文件夹,主程序编译在classes下面,测试程序放在test-classes下。

 

mvn test 运行应用程序中的单元测试

 

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

 

mvn clean 清除目标目录中的生成结果

 

mvn package 依据项目生成jar文件,打包之前会进行编译,测试。

 

mvn install 在本地Repository中安装jar。

 

mvn eclipse:eclipse

生成Eclipse项目文件及包引用定义,注意,需确保定义classpath variables:M2_REPO,指向本地maven类库目录。

   

 

 生成项目: 

mvn archetype:generate  列出所有可用的模板供选择并创建

 

mvn archetype:create -DgroupId=com.myproject.app -DartifactId=myproject -DpackageName=com.myproject.mavenbook

用archetype插件快速创建一个组名为com.myproject.app artifactId为myproject 项目包目录结构为com/myproject/mavenbook的java项目

 

mvn archetype:create -DgroupId=com.myproject.app -DartifactId=myproject -DpackageName=com.myproject.mavenbook -DarchetypeArtifactId=maven-archetype-webapp

用archetype插件快速创建一个组名为com.myproject.app artifactId为myproject 项目包目录结构为com/myproject/mavenbook的web-app项目

 

 进入该目录发现有个pom.xml(以下简称pom)文件,mvn的全部配置(对于此项目)都在这了,通常开发需要集成到Eclipse,生成.project,.classpath

在pom-path下输入:

mvn eclipse:eclipse

 

 Maven dependency 插件:

 

mvn dependency:analyze  分析项目依赖性 

mvn dependency:resolve  已解决依赖的列表 

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

可以用来检查一下pom.xml 中下载下来的这些包之间的依赖关系是否正确

 

mvn install -X 查看完整的依赖踪迹,包含那些因为冲突或者其它原因而被拒绝引入的构件(慎用,输出信息巨大) 

 

 Help插件

mvn help:effective-pom

查看项目的有效pom

 

mvn help:effective-pom > mypom.xml

可以把项目的有效pom放入mypom.xml里面去。以供查看 

 

mvn help:active-profiles

列出活动的profile

 mvn help:active-profiles 

-- 列出当前构建中活动的 Profile(项目的,用户的,全局的)。

 

mvn help:effective-pom

        -- 显示当前构建的实际 POM,包含活动的 Profile。 

 

mvn help:effective-settings 

-- 打印出项目的实际 settings, 包括从全局的 settings 和用户级别 settings继承的配置。

 

mvn help:describe 

-- 描述插件的属性。它不需要在项目目录下运行。但是你必须提供你想要描述插件的 groupId 和 artifactId。 

 

 

describe加上参数就会像下面这样:

mvn help:describe -Dcmd=install

mvn help:describe -Dcmd=help:describe

mvn help:describe -Dplugin=org.apache.maven.plugins:maven-help-plugin

mvn help:describe -DgroupId=org.apache.maven.plugins -DartifactId=maven-help-plugin

 

 

mvn test -Dtest=MyTest  只能src.test.java下的MyTest类进行测试

 

mvn test -Dtest=MyTest -DfailIfNoTests=false 如果测试类里没有测试方法不报错

 

mvn package -Dmavne.test.skip=true 打包之前不执行单元测试

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics