Maven

Maven简介
Maven是一个项目管理工具。包含项目对象模型(POM)、项目生命周期(验证validate,编译compile,测试test,打包package,检查verify,安装install,部署deploy)和一个依赖管理系统。

Maven和Ant
Ant是一个基于Java的构建工具,关注于预处理、编译、打包、测试和分发。
Maven除了构建外,还提供了生成报告、Web站点。

Maven下载
http://maven.apache.org/download.html

安装
解压Maven,设置两个环境变量
M2_HOME=D:\apache-maven-3.2.1
PATH=%PATH%;%M2_HOME%\bin

用户相关配置和仓库
~/.m2/settings.xml
该文件包含了用户相关的认证,仓库和其它信息的配置,用来自定义Maven的行为。
~/.m2/repository/
该目录是你本地的仓库。当你从远程Maven仓库下载依赖的时候,Maven在你本地仓库存储了这个依赖的一个副本。

Maven仓库(Repositories)
Maven仓库分为两种,本地仓库和远程仓库。
本地仓库缺省安装路径在用户目录下,如:C:\Users\Administrator.m2\repository,可修改setting.xml文件中的localRepository更换。
远程仓库主要有三种类型:私服,中央仓库及其他公共库。私服需要我们自己搭建(如Nexus),中央仓库指的是Maven中央仓库,其他公共库如阿里远程仓库。
当我们执行构建时,寻找路径优先级依次为:本地仓库 -> 私服 -> 中央仓库。

Nexus(仓库管理器)
仓库管理器有两个服务目的:首先它的角色是一个高度可配置的介于你的组织与公开Maven仓库之间的代理,其次它为你的组织提供了一个可部署你组织内部生成的构件的地方。

nexus-2.7.2-03-bundle\nexus-2.7.2-03\bin\jsw\windows-x86-32\console-nexus.bat
http://localhost:8081/nexus
admin/admin123

上传jar包到Nexus
Repositories/3rd party/Artifact Upload
GAV Definition:GAV Parameters
Group:com.mopon
Artifact:util
Version:2.0.1
Packaging:jar

Maven命令将jar包加入到本地仓库
mvn install:install-file -Dfile=aliyun-sdk-alipay-1.0.jar -DgroupId=com.aliyun.alipay -DartifactId=aliyun-sdk-alipay -Dversion=1.0 -Dpackaging=jar

跳过单元测试打包
mvn clean
mvn package -Dmaven.test.skip=true
mvn clean package -Dmaven.test.skip=true

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>2.19.1</version>
            <configuration>
                <skip>true</skip>
            </configuration>
        </plugin>
    </plugins>
</build>

配置阿里云仓库

<repositories>
    <repository>
        <id>central</id>
        <name>Nexus aliyun</name>
        <layout>default</layout>
        <url>http://maven.aliyun.com/nexus/content/groups/public</url>
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
        <releases>
            <enabled>true</enabled>
        </releases>
    </repository>
</repositories> 

或修改setting.xml

<mirror>
    <id>nexus-aliyun</id>
    <mirrorOf>central</mirrorOf>
    <name>Nexus aliyun</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>

远程仓库认证,修改setting.xml

<servers>
    <server>
        <id>jtw-snapshots</id>
        <username>admin</username>
        <password>admin123</password>
    </server>
</servers>

查找jar
http://mvnrepository.com
https://search.maven.org

posted on 2018-07-20 14:01  lc19149  阅读(157)  评论(0编辑  收藏  举报

导航