Maven阿里云与本地仓库配置

本篇目录

1、阿里云中央仓库配置的原因
2、阿里云中央仓库配置的两种方法
3、第一次从中央仓库中下载jar包到本地仓库
3.1创建父工程parent project
3.2编译
3.3创建子工程common



1、阿里云中央仓库配置的原因

在pom.xml文件里配置了一些依赖,如下图


Maven阿里云与本地仓库配置_第1张图片
1.png

但因为默认的Maven仓库是在国外,引入这些依赖的时候,可能速度非常慢,于是阿里云做了一个中央仓库,把Maven仓库里的所有jar包复制过来,从阿里云仓库中引入依赖就变得很轻松了。

我打个比方:
pom.xml文件是个购物清单,里面可以列出诸如spring.jar、junit.jar。。。等依赖(商品),默认情况下这些jar包都是从国外的Maven仓库(商店)里引入(购买),你想想,从国外到国内,运输是不是比较困难,是不是还要过海关,这都要花时间啊。于是国内的阿里云也做了个仓库(商店),仓库中放了Maven仓库里所有的jar包(商品),一模一样的,这样我们就可以直接从阿里云仓库中引入依赖(购买商品)。这个也叫镜像。


2、阿里云中央仓库配置的两种方法

1、修改maven根目录下的conf文件夹中的setting.xml文件,内容如下:

      
        
        alimaven  
        aliyun maven  
        http://maven.aliyun.com/nexus/content/groups/public/  
        central          
        
      

2、在pom.xml中直接添加


        
            maven-ali
            http://maven.aliyun.com/nexus/content/groups/public//
            
                true
            
            
                true
                always
                fail
            
        
    
Maven阿里云与本地仓库配置_第2张图片
2.png

3、第一次从中央仓库中下载jar包到本地仓库

3.1创建父工程 parent project

在File》new》other》Maven》maven project》next》,创建一个maven project父工程,Packaging选项为pom。在pom.xml文件中加入以下依赖:


    
        
            maven-ali
            http://maven.aliyun.com/nexus/content/groups/public//
            
                true
            
            
                true
                always
                fail
            
        
    

    
    
        4.12
        4.2.4.RELEASE
        3.2.8
        1.2.2
        1.2.15
        5.1.32
        1.6.4
        2.4.2
        1.0.9
        4.3.5
        1.2
        2.5
        2.0
        2.5
        3.3.2
        1.3.2
        3.3
        3.4.2
        0.9.1
        1.3.1
        2.7.2
        4.10.3
        2.5.3
        3.4.7
        0.1
        5.11.2
        2.3.23
        2.2.2
    
    
        
            
            
                joda-time
                joda-time
                ${joda-time.version}
            
            
            
                org.apache.commons
                commons-lang3
                ${commons-lang3.version}
            
            
                org.apache.commons
                commons-io
                ${commons-io.version}
            
            
                commons-net
                commons-net
                ${commons-net.version}
            
            
            
                com.fasterxml.jackson.core
                jackson-databind
                ${jackson.version}
            
            
            
                org.apache.httpcomponents
                httpclient
                ${httpclient.version}
            
            
            
                org.quartz-scheduler
                quartz
                ${quartz.version}
            
            
            
                junit
                junit
                ${junit.version}
                test
            
            
            
                org.slf4j
                slf4j-log4j12
                ${slf4j.version}
            
            
            
                org.mybatis
                mybatis
                ${mybatis.version}
            
            
                org.mybatis
                mybatis-spring
                ${mybatis.spring.version}
            
            
                com.github.miemiedev
                mybatis-paginator
                ${mybatis.paginator.version}
            
            
                com.github.pagehelper
                pagehelper
                ${pagehelper.version}
            
            
            
                mysql
                mysql-connector-java
                ${mysql.version}
            
            
            
                com.alibaba
                druid
                ${druid.version}
            
            
            
                org.springframework
                spring-context
                ${spring.version}
            
            
                org.springframework
                spring-beans
                ${spring.version}
            
            
                org.springframework
                spring-webmvc
                ${spring.version}
            
            
                org.springframework
                spring-jdbc
                ${spring.version}
            
            
                org.springframework
                spring-aspects
                ${spring.version}
            
            
                org.springframework
                spring-jms
                ${spring.version}
            
            
                org.springframework
                spring-context-support
                ${spring.version}
            
            
            
                jstl
                jstl
                ${jstl.version}
            
            
                javax.servlet
                servlet-api
                ${servlet-api.version}
                provided
            
            
                javax.servlet
                jsp-api
                ${jsp-api.version}
                provided
            
            
            
                commons-fileupload
                commons-fileupload
                ${commons-fileupload.version}
            
            
            
                redis.clients
                jedis
                ${jedis.version}
            
            
            
                org.apache.solr
                solr-solrj
                ${solrj.version}
            
            
            
                com.alibaba
                dubbo
                ${dubbo.version}
            
            
                org.apache.zookeeper
                zookeeper
                ${zookeeper.version}
            
            
                com.github.sgroschupf
                zkclient
                ${zkclient.version}
            
            
                org.apache.activemq
                activemq-all
                ${activemq.version}
            
            
                org.freemarker
                freemarker
                ${freemarker.version}
            
        
    
    
        ${project.artifactId}
        
            
            
                org.apache.maven.plugins
                maven-resources-plugin
                2.7
                
                    UTF-8
                
            
            
            
                org.apache.maven.plugins
                maven-compiler-plugin
                3.2
                
                    1.7
                    1.7
                    UTF-8
                
            
        
        
            
                
                
                    org.apache.tomcat.maven
                    tomcat7-maven-plugin
                    2.2
                
            
        
    

这些都不是实际依赖,只是定义依赖和管理依赖版本。

3.2、编译

在cmd中输入
d:
cd D:\javaeeworkspace\taotao-parent
切换路径到上面创建的父工程,进行mvn compile,mvn clean,操作,build success说明成功。但是在本地仓库只多加了一个org文件夹,其他所有jar包并不会下载。如下图


Maven阿里云与本地仓库配置_第3张图片
3.png

3.3、创建一个maven project子工程

在File》new》other》Maven》maven project》next》,创建一个maven project子工程,比如叫common,Packaging选项为jar,并且继承上面创建的父工程parent project。在pom.xml文件中添加如下代码:


    
        
        
            joda-time
            joda-time
        
        
        
            org.apache.commons
            commons-lang3
        
        
            org.apache.commons
            commons-io
        
        
            commons-net
            commons-net
        
        
        
            com.fasterxml.jackson.core
            jackson-databind
        
        
        
            org.apache.httpcomponents
            httpclient
        
        
        
            org.quartz-scheduler
            quartz
        
        
        
            junit
            junit
            ${junit.version}
            test
        
        
        
            org.slf4j
            slf4j-log4j12
        
    

稍等一下,在子工程common中出现包含jar包的Maven Dependencies,并且也会出现在本地仓库。如下图


Maven阿里云与本地仓库配置_第4张图片
4.png

Maven阿里云与本地仓库配置_第5张图片
5.png

以后就直接从本地仓库中引入依赖。

你可能感兴趣的:(Maven阿里云与本地仓库配置)