1 Maven的安装

maven下载路径:http://maven.apache.org/download.cgi

我是在win7上安装了,安装后在cmd输入 mvn -v:

C:\Users\****>mvn -v
Apache Maven 3.0.3 (r1075438; 2011-03-01 01:31:09+0800)
Maven home: C:\Program Files\apache-maven-3.0.3
Java version: 1.6.0_45, vendor: Sun Microsystems Inc.
Java home: C:\Program Files\Java\jdk1.6.0_45\jre
Default locale: zh_CN, platform encoding: GBK
OS name: "windows 7", version: "6.1", arch: "amd64", family: "windows"

看见如上信息表示Maven已经安装好了,当然在这之前必须装好JDK。

2 Maven的应用

等你安装好Maven后,接下去的一步是要了解maven的核心概念,这样才干在使用maven的时候游刃有余。

接下来我们介绍以下这几个核心概念:

  • POM (Project Object Model)
   来看一个Maven的简单POM配置:

Xml 代码

     <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <groupId>com.mycompany.helloworld</groupId>
<artifactId>weibo-api</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging> <name>weibo-api</name>
<url>http://maven.apache.org</url> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties> <dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>

在 POM 中,groupId, artifactId,version 叫作 Maven 坐标。它能唯一的确定一个项目。有了 Maven 坐标,我们就能够用它来指定我们的项目所依赖的其它项目,插件,或者父项目。

  • Maven依赖管理

举个简单的样例。比方我要maven struts repository

就非常快Baidu能够找到以下这段代码:

<dependency>
<groupId>struts</groupId>
<artifactId>struts</artifactId>
<version>1.2.9</version>
</dependency>

在pom.xml中增加上边一段代码,eclipse就会自己主动下载所依赖的jar包。

  • 本地库(localRepository)

下载的jar包和source须要存放在本地的目录,一般默认在C:\Program Files\apache-maven-3.0.3\conf下的setting.xml中配置:

<span style="font-size:14px;"><?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<!-- 本地 maven 仓库地址 -->
<localRepository>D:\MY_Repository</localRepository>
<pluginGroups/>
<proxies/>
<!-- maven 仓库用户认证信息 -->
<servers>
<server>
<id>****</id>
<username>你的用户名</username>
<password>密码</password>
</server>
<server>
<id>****</id>
<username>你的用户名</username>
<password>密码</password>
</server>
<server>
<id>****</id>
<username>你的用户名</username>
<password>密码</password>
</server> </servers>
<!-- maven 仓库本地镜像配置 -->
<mirrors>
<mirror>
<id>nexus</id>
<mirrorOf>*</mirrorOf>
<name>nexus local repo.</name>
<url>http://maven.****.cn/content/groups/public/</url>
</mirror>
</mirrors> <!-- 公司 maven 仓库服务器地址配置 -->
<profiles>
<profile>
<id>myProfie</id>
<repositories>
<repository>
<id>****</id>
<name>**** Nexus Repository</name>
<url>http://maven.****.cn/content</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>****-nexus</id>
<name>**** Nexus Repository</name>
<url>http://maven.****.cn/content</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>myProfie</activeProfile>
</activeProfiles> </settings>
</span>

当中D:\MY_Repository就是本地的仓库,能够自己改动想放哪放哪!

  • 下载坐标的理解

Maven按什么规则去存放Dependency? 

以下我们来拿struts作样例,这个是hibernate的Dependency配置

<dependency>
<groupId>struts</groupId>
<artifactId>struts</artifactId>
<version>1.2.9</version>
</dependency>

它被下载后将会被存放至 

%repository%\org\struts\struts\1.2.9\struts-1.2.9.jar 

当中%repository%就是你本地的repository目录。

按你的Dependency的groupid + artifactid + version,然后以点号作分隔。来建立目录的。最后建立的目录例如以下 

|--org 

    |--struts

        |--struts

            |--1.2.9 

                |--struts-1.2.9.jar 

 那么我们下载的jar包就被命名为artifactId + "-" + version + ".jar"。 


初步学习Maven的使用,兴许有待深入。

Maven入门学习的更多相关文章

  1. maven入门学习(一)

    一.maven介绍 1.软件开发中我们为什么要使用maven呢?(纯属个人体会观点,如有错误,敬请指正) (1)其一,企业岗位需求,目前的IT开发招聘岗位上,基本都要求会使用maven.        ...

  2. Maven入门学习 (一)

    学习Java 的同学就一定会学习Maven, 那么Maven为什么会得到大量用户的使用呢?它是用来干什么的呢 ?接下来就来介绍 Q:Maven的作用? (1)Maven可以自动化构建项目,可以从清理. ...

  3. Maven入门学习,安装及创建项目

    一.maven介绍: 1.maven是一个基于项目对象模型(POM Project Object Model),通过配置文件管理项目的工具(项目管理工具). 2.maven主要功能:发布项目(从编译到 ...

  4. Maven学习专题--Maven入门及安装

    因为项目需要,新项目需要使用Maven开发,但是组内大部分没有接触过maven.我就毅然承担搭建maven环境的任务了.因为一切重头开始,就想把自己的整个搭建环境.项目创建.框架整合和模块管理整个过程 ...

  5. dubbo入门学习笔记之入门demo(基于普通maven项目)

    注:本笔记接dubbo入门学习笔记之环境准备继续记录; (四)开发服务提供者和消费者并让他们在启动时分别向注册中心注册和订阅服务 需求:订单服务中初始化订单功能需要调用用户服务的获取用户信息的接口(订 ...

  6. Maven学习总结(1)——Maven入门

    Maven学习总结(一)--Maven入门 一.Maven的基本概念 Maven(翻译为"专家","内行")是跨平台的项目管理工具.主要服务于基于Java平台的 ...

  7. Maven入门详解

    什么是Maven Maven,鼎鼎大名,在今天之前,我对于它一直是处于一种"只闻其名不见其人"的状态.之所以说"只闻其名",是因为Maven太有名了,它是Apa ...

  8. Maven入门详解以及Eclisp的集成

    1.首先要安装Maven到操作系统上 Maven的下载页面:http://maven.apache.org/download.html Maven跟Tomcat很像,下载下来后直接解压在指定的目录就安 ...

  9. Maven入门2-pom.xml文件与settings.xml文件

    Maven入门2-pom.xml文件与settings.xml文件 本文内容来源于官网文档部分章节,settings.xml文件:参考http://maven.apache.org/settings. ...

随机推荐

  1. 在.NET4.5项目中添加HttpClient引用的办法

    一. 创建新项目 1. 打开  Microsoft Visual Studio 201 0,然后从 “ 文件 ” 菜单中选择 “ 新建项目 ” .在模板列表中,选择  Visual C#.在该区域下面 ...

  2. 如何调用docker swarm service的API来创建及更新服务

    平衡的推进,先作一个原型吧. #!/usr/bin/env python # -*- coding: utf-8 -*- import requests import json #定义docker s ...

  3. xampp 通过pear安装PHP_UML

    1.在环境变量中添加D:\xampp\php   // 如果前面已经有其他环境变量了,那么要用分号;跟前面的隔开 2.ctrl+R , cmd , pear install PHP_UML 3.如果提 ...

  4. Codeforces Round #424 A(模拟)

    #include<cstdio> ]; int main(){ scanf("%d",&n); ;i<=n;++i)scanf("%d" ...

  5. 19、Django实战第19天:课程列表页

    从今天开始,我们将完成"公开课"课程的相关功能..... 1.把course-list.html复制到templates目录下 2.这个页面的头部.底部与之前定义的base.htm ...

  6. HTTP隧道工具HTTPTunnel

    HTTP隧道工具HTTPTunnel   在很多服务器上,防火墙会限制主机的出站流量,只允许80之类的端口.如果要使用其他端口,只能通过HTTP隧道方式实现.Kali Linux提供一款HTTP隧道工 ...

  7. [BZOJ 2743] 采花

    Link:https://www.lydsy.com/JudgeOnline/problem.php?id=2743 Algorithm: 此题询问区间内出现次数超过1个的数字 明显在线做无从下手,无 ...

  8. 6.4(java学习笔记)转换流

    一.乱码问题 我们来看下列例子: public class ConStream { //当前平台默认采用GBK public static void main(String[] args){ Stri ...

  9. Dom4jDemo应用-保存手机信息

    ---恢复内容开始--- import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStr ...

  10. How to determine what causes a particular wait type

      By: Paul Randal Posted on: March 18, 2014 6:55 pm   [Edit 2016: Check out my new resource – a comp ...