zoukankan      html  css  js  c++  java
  • maven的小知识

    一、下载及安装

    1.1 下载maven 3.1.1

    先到官网http://maven.apache.org/download.cgi 下载最新版本(目前是3.1.1 ),下载完成后,解压到某个目录(本文中是C:Javamaven-3.1.1)

    2.1 配置环境变量

    系统环境变量里,添加MAVEN_HOME(或M2_HOME),其值为C:Javamaven-3.1.1,然后PATH环境变量最后附加上";%MAVEN_HOME%in"

    检测方法:

    a) 重新进入命令行(DOS窗口)模式,输入 echo %MAVEN_HOME% 如果能显示 C:Javamaven-3.1.1 说明环境变量起作用了

    b) 输入 mvn -version,正常情况下会显示maven及jdk的版本号

    (前提:jdk环境必须先安装好,否则后面无法正常编译项目)

    解释一下这个xml文件的内容:

    • modelVersion: 这个XML文件所使用的POM格式的版本
    • groupId: 相当于这个project的所有者或者机构的一个标识,一般是com.company.xxx这种格式
    • artifactId:  这个project最后所生成的文档(jar、war)的名字,比如对于junit这个开源的project,它的artifactId就是junit
    • packaging: 这个project的打包的类型,一般是war、jar等值
    • version: project的版本
    • name: project的名字,生成文档等内容的时候会用的这个名字

     

     

    repository & dependency

    maven里面有一个repository的概念,当我们的项目依赖于某个jar时,maven会去repository里面去找。repository分两种,一种是远程的,一种是本地的。如果有几个project都用到junit,我们可以把junit放在repository里面,几个project可以公用,节约存储空间而且方便管理,这个repository的位置可以在pom.xml里面设置。

    本地的默认的路径是安装用户的目录下的 .m2 epository 文件夹。如果一个依赖项在本地的repository里面没有,那么maven会去他自己的远程的repository http://repo.maven.apache.org/maven2 去下载后放到本地的repository里面。

    也就是说,我们如果我们的project需要要引用一个依赖项,我们只需要在pom.xml文件中进行配置,maven会自动帮我们去引用。 我们之前的创建project里面需要写单元测试,引用到了junit,看pom中的配置:

    1
    2
    3
    4
    5
    6
    7
    8
    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>3.8.1</version>
            <scope>test</scope>
        </dependency>
    </dependencies>

    每一个需要为每一个 dependency 指明groupId,artifactId,version。scope很简单,意思是说我们需要怎么引用,比如我们上面的例子里面设置的是test,意思是说只在test里面引用junit。 但是我们如何知道groupId,artifactId和version呢? 比如我现在想引用log4j,这个几个值怎么填? 可以去http://mirrors.ibiblio.org/maven2/ 上去查找。比如log4j,我们就在上面这个地址加上log4j,也就是http://mirrors.ibiblio.org/maven2/junit/。进去后会有一个maven-metadata.xml,打开就可以知道这些值了然后添加这个dependency了。

    如果要把一个project安装到本地的repository里面,可以执行下面的命令:

    mvn install

     

    到这里就说完了创建,编译,测试,打包以及安装,大部分的项目也就是做这些事情。

    再介绍几个其它命令:

    1. mvn site : 为你的project创建一个站点
    2. mvn clean: 清除target目录下的所有文件
    3. mvn eclipse:eclipse :为project生成eclipse的工程文件和classpath文件
     
  • 相关阅读:
    Python多线程join的用法
    Python多线程互斥锁
    python Queue模块
    精度计算————乘法(大数乘小数)
    精度计算——大数阶乘
    python埃式筛法求素数
    Scala io操作
    scala io,ubuntu常见配置
    大数据之scala高级语法学习
    大数据之scala基本语法学习
  • 原文地址:https://www.cnblogs.com/mm163/p/9978208.html
Copyright © 2011-2022 走看看