`
jetway
  • 浏览: 473333 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

Maven2 的常用命令

    博客分类:
  • java
 
阅读更多

Maven2 的常用命令

 

Maven库:

 

http://repo2.maven.org/maven2/

 

Maven依赖查询:

 

http://mvnrepository.com/

 

Maven常用命令: 

1. 创建Maven的普通java项目: 

   mvn archetype:create 

   -DgroupId=packageName 

   -DartifactId=projectName  

2. 创建Maven的Web项目:   

    mvn archetype:create 

    -DgroupId=packageName    

    -DartifactId=webappName 

    -DarchetypeArtifactId=maven-archetype-webapp    

3. 编译源代码: mvn compile 

4. 编译测试代码:mvn test-compile    

5. 运行测试:mvn test   

6. 产生site:mvn site   

7. 打包:mvn package   

8. 在本地Repository中安装jar:mvn install 

9. 清除产生的项目:mvn clean   

10. 生成eclipse项目:mvn eclipse:eclipse  

11. 生成idea项目:mvn idea:idea  

12. 组合使用goal命令,如只打包不测试:mvn -Dtest package   

13. 编译测试的内容:mvn test-compile  

14. 只打jar包: mvn jar:jar  

15. 只测试而不编译,也不测试编译:mvn test -skipping compile -skipping test-compile 

      ( -skipping 的灵活运用,当然也可以用于其他组合命令)  

16. 清除eclipse的一些系统设置:mvn eclipse:clean  

 

ps: 

 

一般使用情况是这样,首先通过cvs或svn下载代码到本机,然后执行mvn eclipse:eclipse生成ecllipse项目文件,然后导入到eclipse就行了;修改代码后执行mvn compile或mvn test检验,也可以下载eclipse的maven插件。 

 

mvn -version/-v  显示版本信息 

mvn archetype:generate        创建mvn项目 

mvn archetype:create -DgroupId=com.oreilly -DartifactId=my-app   创建mvn项目 

 

mvn package            生成target目录,编译、测试代码,生成测试报告,生成jar/war文件 

mvn jetty:run            运行项目于jetty上, 

mvn compile                    编译 

mvn test                    编译并测试 

mvn clean                    清空生成的文件 

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

mvn -Dwtpversion=1.0 eclipse:eclipse        生成Wtp插件的Web项目 

mvn -Dwtpversion=1.0 eclipse:clean        清除Eclipse项目的配置信息(Web项目) 

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

 

在应用程序用使用多个存储库 

<repositories>    

    <repository>      

        <id>Ibiblio</id>      

        <name>Ibiblio</name>      

        <url>http://www.ibiblio.org/maven/</url>    

    </repository>    

    <repository>      

        <id>PlanetMirror</id>      

        <name>Planet Mirror</name>      

        <url>http://public.planetmirror.com/pub/maven/</url>    

    </repository>  

</repositories> 

 

 

mvn deploy:deploy-file -DgroupId=com -DartifactId=client -Dversion=0.1.0 -Dpackaging=jar -Dfile=d:\client-0.1.0.jar -DrepositoryId=maven-repository-inner -Durl=ftp://xxxxxxx/opt/maven/repository/ 

 

 

发布第三方Jar到本地库中: 

 

mvn install:install-file -DgroupId=com -DartifactId=client -Dversion=0.1.0 -Dpackaging=jar -Dfile=d:\client-0.1.0.jar 

 

 

-DdownloadSources=true 

 

-DdownloadJavadocs=true 

 

mvn -e            显示详细错误 信息. 

 

mvn validate        验证工程是否正确,所有需要的资源是否可用。 

mvn test-compile    编译项目测试代码。 。 

mvn integration-test     在集成测试可以运行的环境中处理和发布包。 

mvn verify        运行任何检查,验证包是否有效且达到质量标准。     

mvn generate-sources    产生应用需要的任何额外的源代码,如xdoclet。 

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/lifxue/archive/2009/10/14/4662902.aspx 

 

常用命令: 

mvn -v 显示版本 

mvn help:describe -Dplugin=help 使用 help 插件的  describe 目标来输出 Maven Help 插件的信息。 

mvn help:describe -Dplugin=help -Dfull 使用Help 插件输出完整的带有参数的目标列 

mvn help:describe -Dplugin=compiler -Dmojo=compile -Dfull 获取单个目标的信息,设置  mojo 参数和  plugin 参数。此命令列出了Compiler 插件的compile 目标的所有信息 

mvn help:describe -Dplugin=exec -Dfull 列出所有 Maven Exec 插件可用的目标 

mvn help:effective-pom 看这个“有效的 (effective)”POM,它暴露了 Maven的默认设置 

 

mvn archetype:create -DgroupId=org.sonatype.mavenbook.ch03 -DartifactId=simple -DpackageName=org.sonatype.mavenbook 创建Maven的普通java项目,在命令行使用Maven Archetype 插件 

mvn exec:java -Dexec.mainClass=org.sonatype.mavenbook.weather.Main Exec 插件让我们能够在不往 classpath 载入适当的依赖的情况下,运行这个程序 

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

mvn dependency:tree 打印整个依赖树 

 

mvn install -X 想要查看完整的依赖踪迹,包含那些因为冲突或者其它原因而被拒绝引入的构件,打开 Maven 的调试标记运行 

mvn install -Dmaven.test.skip=true 给任何目标添加maven.test.skip 属性就能跳过测试 

mvn install assembly:assembly 构建装配Maven Assembly 插件是一个用来创建你应用程序特有分发包的插件 

 

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

mvn compile 编译你的项目 

mvn clean install 删除再编译 

 

mvn hibernate3:hbm2ddl 使用 Hibernate3 插件构造数据库

 

 

 

 

 

 

Maven2 的运行命令为 : mvn

常用命令为 :

             mvn archetype:create :创建 Maven 项目

             mvn compile :编译源代码

             mvn test-compile :编译测试代码

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

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

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

             mvn package : 依据项目生成 jar 文件

             mvn install :在本地 Repository 中安装 jar

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

生成项目

             建一个 JAVA 项目 : mvnarchetype:create -DgroupId=com.demo -DartifactId=App

          建一个 web项目 : mvnarchetype:create -DgroupId=com.demo -DartifactId=web-app -DarchetypeArtifactId=maven-archetype-webapp

 

生成 Eclipse项目

普通 Eclipse项目执行 : mvn eclipse:eclipse

           Eclipse WTP项目执行 : mvn eclipse:eclipse –Dwtpversion=1.0

              wtp1.0以上版本均可用)

 

 

pom.xml 文件基本节点介绍

<project > :文件的根节点 .
<modelversion >
pom.xml 使用的对象模型版本 .
<groupId >
:创建项目的组织或团体的唯一 Id.
<artifactId >
:项目的唯一 Id, 可视为项目名 .
<packaging >
:打包物的扩展名,一般有 JAR,WAR,EAR
<version >
:产品的版本号 .
<name >
:项目的显示名,常用于 Maven 生成的文档。
<url >
:组织的站点,常用于 Maven 生成的文档。
<description >
:项目的描述,常用于 Maven 生成的文档。

 

 

POM 4 中, <dependency> 中还引入了 <scope> ,它主要管理依赖的部署。

目前 <scope> 可以使用 5 个值:

compile:缺省值,适用于所有阶段,会随着项目一起发布。

provided:类似 compile ,期望 JDK 、容器或使用者会提供这个依赖。如 servlet.jar

runtime:只在运行时使用,如 JDBC 驱动,适用运行和测试阶段。

test:只在测试时使用,用于编译和运行测试代码。不会随项目发布。

         system :类似 provided ,需要显式提供包含依赖的 jar Maven 不会在 Repository 中查找它。

定义自己的结构

新建一个 archetype 项目 :

mvn archetype:create\
-DgroupId=cn.prof\
-DartifactId=prof-archetype\
-DarchetypeArtifactId=maven-archetype-archetype

       主要的模板文件 : archetype-resources/pom.xml

       修改其中内容

       修改 META-INF/maven/archetype.xml中定义了相关的 sources

       安装此项目 : mvn install

执行下面的命令创建新目录的项目:

mvn archetype:create -DgroupId=com.mergere.mvnbook \
-DartifactId=proficio-example\

-DarchetypeGroupId=com.xxx.mvn\
-DarchetypeArtifactId=
prof-archetype \
-DarchetypeVersion=1.0-SNAPSHOT



目录说明

 

Maven2  Directory

目录

二级目录

三级目录

四级目录

说明

pom.xml

 

Maven2 的项目设置文件

src/

 

源码目录

main/

 

项目主体目录根

java/

 

源代码目录

resources/

 

所需资源目录

filters/

 

资源过滤文件目录

assemby/

 

Assembly descriptors

config/

 

配置文件根目录

webapp/

 

web 应用目录

WEB-INF/

WEB-INF 目录

test/

 

项目测试目录根

java/

 

测试代码目录

resources/

 

测试所需资源目录

filters/

 

测试资源过滤文件目录

site/

 

site 相关的资源目录

target/

 

输出目录根

classes/

 

 

项目主体输出目录

test_classes/

 

项目测试输出目录

site/

 

项目site 输出目录

 

 

 

 

碰到的问题

1.       M2eclipse 插件装上之后,会报这个错

Eclipse is running in a JRE, but a JDK is required

Some Maven plugins may not work when importing projects or updating source folders.

解决办法 :查看 eclipse\readme\readme_eclipse.html里面有详细说明,在 Selecting a workspace这一节

创建一个快捷方式,设定目标位置为 D:\eclipse_jee\eclipse.exe -vm D:\Java\jdk1.5.0_10\bin\javaw

因为默认 vmjdk\jre\bin\javaw,直接改到 jdk下,错误即可消除

 

2.       使用命令 mvn eclipse:eclipse –Dwtpversion=1.0 之后,导入的项目 Project Facet java 还是 1.4 ,而我 Eclipse 上设置的是 5.0

解决办法 :在 pom.xmlplugins加入说明就可以了

Xml代码

  1. <plugins>  
  2.         <plugin>  
  3.            <artifactId>maven-compiler-plugin</artifactId>  
  4.            <configuration>  
  5.                <source>1.5</source>  
  6.                <target>1.5</target>  
  7.            </configuration>  
  8.         </plugin>  
  9. </plugins>  

view plaincopy to clipboardprint?

  1. <plugins>         
  2. <plugin>           
  3.  <artifactId>maven-compiler-plugin</artifactId>           
  4.  <configuration>                
  5. <source>1.5</source>              
  6.   <target>1.5</target>           
  7.  </configuration>        
  8.  </plugin> 
  9. </plugins>  

Xml代码

  1. <plugins>         
  2. <plugin>           
  3.  <artifactId>maven-compiler-plugin</artifactId>     
  4.        <configuration>               
  5.      <source>1.5</source>          
  6.       <target>1.5</target>        
  7.     </configuration>        
  8.  </plugin>
  9.  </plugins>  

<plugins>         <plugin>            <artifactId>maven-compiler-plugin</artifactId>            <configuration>                <source>1.5</source>                <target>1.5</target>            </configuration>         </plugin> </plugins>

 

3.   在使用命令mvn eclipse:eclipse 之后,importEclipse,然后在Eclipse项目上点右键,选择插件Maven>Enable Dependency Management后,会报重复引用依赖的错误
解决办法 :再执行mvn eclipse:eclipse然后刷新Eclipse的项目,取消掉maven插件的引用依赖,错误就会消除

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics