您的位置:首页 > 其它

maven之应用总结

2016-02-29 11:32 267 查看
一般在maven应用过程中,有一些东西是我们经常会遇到的,总结如下:
1、GAV坐标:通过GAV就可以确定一个jar包,通过这个坐标值,我们就可以将其下载下来,如下面:
        <!--所有的Maven项目都必须配置这四个配置项-->

<modelVersion>4.0.0</modelVersion>
<!--groupId指的是项目名的项目组,默认就是包名-->
<groupId>cn.gacl.maven.hello</groupId>
<!--artifactId指的是项目中的某一个模块,默认命名方式是"项目名-模块名"-->
<artifactId>hello-first</artifactId>
<!--version指的是版本,这里使用的是Maven的快照版本-->
<version>SNAPSHOT-0.0.1</version>

当然一个jar包就会有一个GAV坐标,除了我们自己发布的一些jar包文件,还有那么多的第三方的jar文件,我们不可能记得那么清楚,其实也没有让你去记,只要知道怎么去找我们自己想要的jar包就轻松多了。下面来给大家提供一个GAV坐标查找网址:http://mvnrepository.com

2、值得注意的是,maven项目规定,所有的*.java文件必须放在src目录下的main目录下的java目录中,pom.xml文件和src是同级目录。只有这样,maven才会识别,当我们的项目要用到相关的jar包时,maven会自动帮我们去中心仓库去下载。

3、maven常用命令含义:

   mvn clean:表示运行清理操作(会默认将target文件夹中的数据清理)

mvn clean compile:表示先运行清理之后运行编译,会将代码编译到target文件夹中

mvn clean test:运行清理和测试

mvn clean package:运行清理和打包

mvn clean install:运行清理和安装,会将打好的包安装到本地仓库中,以便其他的项目可以使用

mvn clean deploy:运行清理和发布(发布到伺服上面,别的机器就可以通过GAV进行下载)

4、maven仓库配置

    maven仓库,即我们项目所下载的jar包存放的地方,一般不进行配置的话,从Maven中心仓库下载到本地的jar包的默认存放在”${user.home}/.m2/repository”中,${user.home}表示当前登录系统的用户目录。而为了便于管理和查找,我们都会自己指定一个本地仓库,配置如下:编辑conf文件夹下面的setting.xml文件,修改<localRepository>标签,如下:

    

5、maven继承特性,和类的集成类似,我们在集成一些类时,往往将父类的公共属性和保护属性继承到子类。maven也一样,如果配置了父文件信息(一般为GAV坐标),则会将父文件中的一些配置继承到子文件中(一般可以通过字方法进行版本控制)。如下:

    1)在父文件中设置一些公共的属性或者GAV信息:


<properties>


    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

    <junit.version>4.10</junit.version>

</properties>

<dependencies>

     <dependency> 

       <groupId>junit</groupId> 

       <artifactId>junit</artifactId> 

       <version>${junit.version}</version> 

       <scope>test</scope> 

     </dependency> 

</dependencies>  

2)在子文件中通过配置如下信息则可以进行继承:


    <parent>

        <groupId>com.tgb.user</groupId>
          <artifactId>user-parent</artifactId>
          <version>0.0.1-SNAPSHOT</version>
          <relativePath>../user-parent/pom.xml</relativePath>
    </parent>
<dependencies>
     <dependency> 
       <groupId>junit</groupId> 
       <artifactId>junit</artifactId> 
     </dependency> 
</dependencies>  

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  maven