来源:http://tianya23.blog.51cto.com/1081650/386908

1、maven 仓库地址:

共有的仓库
http://repo1.maven.org/maven2/http://repository.jboss.com/maven2/
http://repository.sonatype.org/content/groups/public/
http://mirrors.ibiblio.org/pub/mirrors/maven2/org/acegisecurity/

私有的仓库
http://repository.codehaus.org/
http://snapshots.repository.codehaus.org/
http://people.apache.org/repo/m2-snapshot-repository
http://people.apache.org/repo/m2-incubating-repository/

 
同时可以搭建自己的maven仓库:私服, 搭建的方式参考如下:

2、收集的外部仓库地址

 
附:Maven仓库的搭建
 访问http://nexus.sonatype.org/downloads/下载Nexus。 
   启动Nexus,就是启动一个web服务器,它的默认地址是localhost:8081。Nexus在一个名为Jetty的servlet容器中运行,它使用一个名为Tanuki Java Service Wrapper的本地服务包裹器启动。这个服务包裹器可以被配置成以Windows服务或Unix守护线程的形式运行Nexus。要启动Nexus,你需要为你的平台找到合适的启动脚本。要查看可用平台的列表,查看${NEXUS_HOME}/bin/jsw目录的内容。
   可执行文件在%nexus安装目录%\nexus-webapp-1.0.0\binjsw\windows-x86-32下: 
   InstallNexus.bat/UninstallNexus.bat是安装/卸载nexus为windows service。 
   Nexus.bat是直接在命令行中启动Nexus,如果不想安装Nexus为windows service,可以用这个文件来手工控制Nexus的启动退出。 
1.配置nexus 
   首先登录,默认地址http://localhost:8081/nexus/,默认用户名密码为admin/admin123. 
    nexus默认是关闭远程索引下载功能的。开启的方式: 
    点击Administration菜单下面的Repositories,将这三个仓库Apache Snapshots,Codehaus Snapshots,Maven Central的 
    Download Remote Indexes修改为true。然后在这三个仓库上分别右键,选择Re-index,这样Nexus就会去下载远程的索引文件。 
2.管理仓库 
以管理员用户登陆然后点击左边导航菜单Administration下面的Repositories。Nexus提供了三种不同的仓库。 
(1)代理仓库 
一个代理仓库是对远程仓库的一个代理。默认情况下,Nexus自带了如下配置的代理仓库: 
Apache Snapshots 
这个仓库包含了来自于Apache软件基金会的快照版本。http://people.apache.org/repo/m2-snapshot-repository 
Codehaus Snapshots 
这个仓库包含了来自于Codehaus的快照版本。 http://snapshots.repository.codehaus.org/ 
Central Maven Repository 
这是中央Maven仓库(发布版本)。 http://repo1.maven.org/maven2/ 
(2)宿主仓库 
一个宿主仓库是由Nexus托管的仓库。Maven自带了如下配置的宿主仓库。 
3rd Party 
这个宿主仓库应该用来存储在公共Maven仓库中找不到的第三方依赖。这种依赖的样例有:你组织使用的,商业的,私有的类库如Oracle JDBC驱动。 
Releases 
这个宿主仓库是你组织公布内部发布版本的地方。 
Snapshots 
这个宿主仓库是你组织发布内部快照版本的地方。 
(3)虚拟仓库 
一个虚拟仓库作为Maven 1的适配器存在。Nexus自带了一个central-m1虚拟仓库 
3. 管理组 
组是Nexus一个强大的特性,它允许你在一个单独的URL中组合多个仓库。Nexus自带了两个组:public和public-snapshots。public组中组合了三个宿主仓库:3rd Party, Releases, 和Snapshots,还有中央Maven仓库。而public-snapshots组中组合了Apache Snapshots和Codehaus Snapshots仓库。 
4. 配置maven 
要让maven使用Nexus作为仓库,要修改~/.m2/settings.xml. 
Xml代码 
<profiles> 
   <profile> 
     <id>nexus</id> 
     <repositories> 
       <repository> 
           <id>nexus</id> 
           <name>local private nexus</name> 
           <url>http://localhost:8081/nexus/content/groups/public</url> 
       </repository> 
     </repositories> 
   </profile> 
   <profile> 
     <id>nexus-snapshots</id> 
     <repositories> 
       <repository> 
           <id>nexus-snapshots</id> 
           <name>local private nexus snapshots</name> 
           <url>http://localhost:8081/nexus/content/groups/public-snapshots</url> 
       </repository> 
     </repositories> 
   </profile> 
</profiles>
<activeProfiles> 
    <activeProfile>nexus</activeProfile> 
    <activeProfile>nexus-snapshots</activeProfile> 
</activeProfiles>
5.部署构件至Nexus 
   要部署构件至Nexus,在distributionManagement中提供仓库URL,然后运行mvn deploy。Maven会通过一个简单的HTTP PUT将项目POM和构件推入至你的Nexus安装。需要配置你项目POM中distributionManagement部分的repository。 
Xml代码 
<distributionManagement> 
<repository> 
    <id>releases</id> 
    <name>Internal Releases</name> 
    <url>http://localhost:8081/nexus/content/repositories/releases</url> 
</repository> 
<snapshotRepository> 
    <id>Snapshots</id> 
    <name>Internal Snapshots</name> 
    <url>http://localhost:8081/nexus/content/repositories/snapshots</url> 
</snapshotRepository> 
</distributionManagement>
这样还没完,这时如果部署会报错,还要在~/.m2/settings.xml中添加如下的服务器登录信息: 
Xml代码 
<server> 
<id>releases</id> 
<username>admin</username> 
<password>admin123</password> 
</server> 
<server> 
<id>Snapshots</id> 
<username>admin</username> 
<password>admin123</password> 
</server>
部署第三方构件: 
构件可能是私有数据库的JDBC驱动如Oracle,或者你依赖于另一个JAR,它既不开源也无法免费获得。在这样的情况下,你就需要手动拿来这些构件然后发布到你自己的仓库中。Nexus提供宿主的"third-party"仓库,就是为了这个目的。 
使用以下命令发布该文件至Nexus: 
Java代码 
mvn deploy:deploy-file -DgroupId=com.oracle -DartifactId=ojdbc14 
-Dversion=10.2.0.3.0 -Dpackaging=jar -Dfile=ojdbc.jar   
-Durl=http://localhost:8081/nexus/content/repositories/thirdparty   
-DrepositoryId=thirdparty
6.Nexus监听端口 
默认情况下,Nexus监听端口8081。你可以更改这个端口,通过更改${NEXUS_HOME}/conf/plexus.properties的值,为此,停止Nexus,更改文件中applicationPort的值,然后重启Nexus。 
7.Maven Profiles 
   Maven中的profile是一组可选的配置,可以用来设置或者覆盖配置默认值。有了profile,你就可以为不同的环境定制构建。profile可以在pom.xml中配置,并给定一个id。然后你就可以在运行Maven的时候使用的命令行标记告诉Maven运行特定profile中的目标。以下pom.xml使用production profile覆盖了默认的Compiler插件设置。 
Xml代码 
<profiles> 
   <profile> 
     <id>production</id> 
     <build> 
       <plugins> 
         <plugin> 
           <groupId>org.apache.maven.plugins</groupId> 
           <artifactId>maven-compiler-plugin</artifactId> 
           <configuration> 
             <debug>false</debug> 
             <optimize>true</optimize> 
           </configuration> 
         </plugin> 
       </plugins> 
     </build> 
   </profile> 
</profiles> 
要使用production profile来运行mvn install,你需要在命令行传入-Pproduction参数。要验证production profile覆盖了默认的Compiler插件配置,可以像这样以开启调试输出(-X) 的方式运行Maven。 
    如果你开始大量使用Maven profile,你会希望将profile从POM中分离,使用一个单独的文件如profiles.xml。你可以混合使用定义在pom.xml中和外部profiles.xml文件中的profile。只需要将profiles元素放到${basedir}目录下的profiles.xml文件中,然后照常运行Maven就可以。profiles.xml文件的大概内容如下: 
Xml代码 
<profiles> 
    <profile> 
      <id>development</id> 
      <build> 
        <plugins> 
          <plugin> 
            <groupId>org.apache.maven.plugins</groupId> 
            <artifactId>maven-compiler-plugin</artifactId> 
            <configuration> 
              <debug>true</debug> 
              <optimize>false</optimize> 
            </configuration> 
          </plugin> 
        </plugins> 
      </build> 
    </profile> 
    <profile> 
      <id>production</id> 
      <build> 
        <plugins> 
          <plugin> 
            <groupId>org.apache.maven.plugins</groupId> 
            <artifactId>maven-compiler-plugin</artifactId> 
            <configuration> 
              <debug>false</debug> 
              <optimize>true</optimize> 
            </configuration> 
          </plugin> 
        </plugins> 
      </build> 
    </profile> 
</profiles>
   settings profile可以应用到所有你使用Maven构建的项目。你可以在两个地方定义settings profile:定义在~/.m2/settings.xml中的用户特定settings profile,或者定义在${M2_HOME}/conf/settings.xml中的全局settings profile。

Maven仓库汇总的更多相关文章

  1. 国内maven仓库地址资源汇总

    国内maven仓库地址:阿里云maven仓库,网易163maven仓库,以及其他maven仓库地址. 国内下载maven一般速度都很慢,下载需要很久时间.这里汇总了一些国内的镜像资源 附带pom文件中 ...

  2. Gradle实战:发布aar包到maven仓库

    查看原文:http://blog.csdn.net/u010818425/article/details/52441711 Gradle实战系列文章: <Gradle基本知识点与常用配置> ...

  3. maven仓库总结,maven私服搭建

    配置pom.xml依赖包时在这里找包的描述: http://search.maven.org/#browse 以java为根目录. mvn archtype:generate -DgroupId=zt ...

  4. maven仓库总结,maven私服搭建,批量mvn eclipse:eclipse

    配置pom.xml依赖包时在这里找包的描述: http://search.maven.org/#browse 以java为根目录. mvn archtype:generate -DgroupId=zt ...

  5. idea maven问题汇总

    目录 idea问题.maven问题汇总 解决方法汇总 idea问题.maven问题汇总 idea maven依赖包报can't resolve问题 代码飘红 解决办法:删除所有.idea等idea相关 ...

  6. 转:aliyun阿里云Maven仓库地址——加速你的maven构建

    maven仓库用过的人都知道,国内有多么的悲催.还好有比较好用的镜像可以使用,尽快记录下来.速度提升100倍. http://maven.aliyun.com/nexus/#view-reposito ...

  7. aliyun阿里云Maven仓库地址——加速你的maven构建

    maven仓库用过的人都知道,国内有多么的悲催.还好有比较好用的镜像可以使用,尽快记录下来.速度提升100倍. http://maven.aliyun.com/nexus/#view-reposito ...

  8. maven仓库信息分析站点推荐

    maven是java的一个依赖,打包管理的工具,稍微大一点的java项目都需要使用maven. 随着java的壮大,maven仓库越来越大,仓库中的jar包有60多万,各种group,各种构件,各种版 ...

  9. 国内好用的maven仓库,添加到本地nexus中

    速度快的maven仓库真的难找,国外网站很多被封了.前天在网上找,有人说阿里有个公开的,速度很快.确实很快! 我添加到本地nexus中,结果不能更新索引,我是这么添加的,如下: 这个地址在浏览器中能够 ...

随机推荐

  1. 在盒子(2CCC)的日子

    在盒子(2CCC)的日子 DELPHIER的足迹印在DFW,印在2CCC.曾经的DFW和2CCC,学术气氛非常浓烈.有人提问,众人纷纷热心解答,仿佛是在解答自己难题.大家只为技术争的面红耳赤.很怀念当 ...

  2. task4:结对项目-词频统计

    结对人:周楠 思路:利用TreeMap实现key字典序,然后输出到LinkedList,然后用Comparator,实现字典值从大到小排序,但是key实现值相同的key字典序的想出的实现方法,但是一直 ...

  3. Python学习-13.Python的输入输出(二)

    在Python中,读取文件使用open函数 file=open(r'E:\temp\test.txt','r') var = file.read() print(var) file.close() 第 ...

  4. [毕业设计][期末作业]二手闲置小程序 免费信息发布系统功能源码(小程序+php后台管理)

    最近做了一个小程序,主要是二手闲置免费信息发布系统的功能,里面包括了登录,发布商品,商品管理,违规投诉,canva商品海报生成,分享等一些基础的功能,可以说代码都是自己辛辛苦苦写出来的.可作为毕业设计 ...

  5. php数组转成php编程代码

    将php数组转成可以在php上面运行的编程代码,支持一维及多维数组 <?php //一维数组 $test1 = array(1,2,3); //二维数组 $test2[0] = array( ' ...

  6. java分页实例Demo

    前两天测试过的一个分页的demo,在网上看到的,挺好的,就写了下来. 分页也是web里面必须的,有使用的价值. demo文件打包上传了,链接:http://pan.baidu.com/s/1o6sME ...

  7. CentOS6.3安装MySQL5.5

    1.查看系统是否安装了MySQL 使用命令: #rpm -qa | grep mysql 2.卸载已安装的MySQL 卸载mysql命令如下: #rpm -e --nodeps  mysql-libs ...

  8. wp8.1 调用智慧天气SmartWeatherAPI

    在调用api应用的过程,我们需要用hmac加密技术,它是一种基于hash的加密算法,通过一个双方共同约定的密钥,在发送message前,对密钥进行了sha散列计算,在生成消息又对此密钥进行了二次加密, ...

  9. ssl协议,openssl,创建私有CA

    SSL是Security Socket Layer:安全的套接字层 他介于HTTP和TCP协议层之间 SSL是Netscape公司开发的,属于个人 TLS是标准委员会制定的 OpenSSL是SSL的开 ...

  10. ASP Base64位 加密解密

    网上找了很多,运行时都会提示某个错误,有点乱.后面找到测试,这个转ASNI码的能实现 sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabc ...