`
江南白衣
  • 浏览: 550074 次
  • 来自: 广州
社区版块
存档分类
最新评论

真正的maven私服搭建器--Artifactory

阅读更多
一个团队要真正用好Maven,repository私服是免不了的,否则team mate们多好奇的目光,都会全部消耗在漫长的jar下载中。

    以前介绍过一个搭建私服的简朴但很笨的办法--将雷锋同志下载好的.m2/repository目录整个上传到任意的Web服务器中。其实世上多的是专业的maven私服搭建器,见TheServiceSide的文章--Setting Up a Maven  Repository

    我用的是Artifactory,忽然间觉得,Java的服务应用啥时候终于变得这么好用了,什么都不用装,不用配,双击artifactory.bat,自己就会启动Jetty Web服务器,典型的拆箱即用。

    10分钟入门到开动

  • 双击artifactory.bat,启动默认配置的Artifactory服务。
  • http://localhost:8081/artifactory/,用admin/password登录进管理界面看看。
  • 修改自己项目的pom.xml,增加私服定义
        <repositories>
            
    <repository>
                
    <id>artifactory</id>
                
    <name>your local artifactory</name>
                
    <url>http://localhost:8081/artifactory/repo</url>
            </
    repository>
        </
    repositories>

        
    <pluginRepositories>
            
    <pluginRepository>
                
    <id>artifactory</id>
                
    <name>your local artifactory</name>
                
    <url>http://localhost:8081/artifactory/plugins-releases</url>
                
    <snapshots>
                    
    <enabled>false</enabled>
                </
    snapshots>
            </
    pluginRepository>
        </
    pluginRepositories>
  • 正常运行项目的maven命令,向artifactory索求jar。如果artifactory已经下载了就会直接返回给你,还没有的就会去那几个repo官方站下载。进入到artifactory的管理界面,不断刷新Browse the repository,会看到仓库不断丰富的情况。

另外,官网服务器上还没有的一些jar,也可以通过管理界面很方便的deploy到Artifactory中。

最后你团队里的artifactory服务器不能直接连外网,需要使用HTTP代理服务器的话,见http://www.jfrog.org/sites/artifactory/latest/configuration.html

建议那些愿意为开源作实事的站点,在带宽充裕的服务器上,用Artifactory搭一个jar仓库吧,SpringSide就可以直接连上去下载jar了:)

分享到:
评论
21 楼 jerry_shen 2008-07-25  
可以用www.findjar.com jar搜索引擎。
20 楼 nasvel 2008-07-22  
我们一直用proximity,刚才简单的看了看artifactory的文档,觉得tomcat集成方面好像比proximity容易,决定到公司去试一试,多谢。

maven proxy对共享公司内部公用库必不可少,不仅仅是带宽和速度的问题。
19 楼 江南白衣 2007-10-15  
Sam1860 写道
这个东西并不是想象中那么好用的,可能是由于他连服务器下载文件的机制做得不好,时不时出一些SocketTimeout,如果是在下plugins出现,本地maven就会cache这个错误,认为这个plugin是不存在的,当你执行需要这个plugin的goal时就会直接报错。
如果是局域网内的团队,用共享目录作local repositorty可能更加好用


是的,你的server网速一定要够快,否则它在官网没下完之前,你就会SocketTimeout.
18 楼 Frank.Li 2007-10-15  
怎样把maven repository中所有的文件都下载到本地呢?
17 楼 oak2008 2007-09-20  
我用的是netbeans IDE,感觉很好!maven有一段时间尝试去用,但还是不会用!
16 楼 sunsy 2007-08-29  
  试用了一下,在下载包的时候问题很多,一早上也没有成功下载几个完整的包,把以前下载的REPO用IMPORT的方式导入也是不行,看来开始用它会比较痛苦一点。就是DEPLOY自己的一些包的时候觉得挺好用。而且在这个下面包不是以显式的方式存储在服务器上,只能通过管理界面来查看包情况还是觉得有些麻烦。
  我现在的做法就是在服务器以日构建的形式跑,用TOMAT做个服务,CONTEXT的URL就指向那个M2的仓库,项目组的仓库就用内部服务器的,现在用起来还比较方便。
15 楼 Sam1860 2007-08-24  
这个东西并不是想象中那么好用的,可能是由于他连服务器下载文件的机制做得不好,时不时出一些SocketTimeout,如果是在下plugins出现,本地maven就会cache这个错误,认为这个plugin是不存在的,当你执行需要这个plugin的goal时就会直接报错。
如果是局域网内的团队,用共享目录作local repositorty可能更加好用
14 楼 IvanLi 2007-08-24  
mavan repos 里有的.sha1是干什么用的?
13 楼 lordhong 2007-08-23  
多谢兄弟, 非常好用!
12 楼 maomaode 2007-08-08  
没错,是这样的,我们的150G已经吃的差不多了,而且大部分是snapshot。

这样看来Artifactory 和maven_proxy比较类似。
11 楼 江南白衣 2007-08-07  
mirror的话,会很费磁盘空间,而Artifactory只会下载你的项目组需要的jar,maven repo的大小天天剧增,大部分jar是自己用不到的,所以还是只cache自己团队要用的就好了。
10 楼 maomaode 2007-08-07  
我之前用maven-proxy, 后来直接用rsync, 来做maven mirror, 然后用apache httpd, 发现速度上确实是maven-proxy无法比拟的
9 楼 netment 2007-08-05  
你需要在eclipse中设置一个变量M2_REPO,让这个变量指向你本地所缓存jar包的目录,默认是~/.m2/repository
8 楼 camelwoo 2007-08-03  
怎么以前没找到呢
7 楼 jomper 2007-08-03  
请问使用eclipse maven plugin,如何设置 repository的路径?默认是my document/.m2/repository
6 楼 monkeyhero 2007-08-03  
xl515331 写道
我用 MyEclipse 没有安装任何maven 插件,感觉在 IDE 下直接执行 Spring-mock 的时候总出一些莫名其妙的错误.
不知道为啥

你用mvn的命令行运行有错误么?mvn test
5 楼 lsqlister 2007-08-01  
感谢啊,我公司不能直接连外网,需要Http代理,
现在终于可以下载jar文件了.
4 楼 xl515331 2007-08-01  
开始 不太习惯 maven 的管理方式 ,
现在已经 习惯了
就是还有  一些问题 想请教下
我用 MyEclipse 没有安装任何maven 插件,感觉在 IDE 下直接执行 Spring-mock 的时候总出一些莫名其妙的错误.
不知道为啥
3 楼 acdc 2007-07-31  
Maven官方有一个实现,就是archiva,也不错。
2 楼 江南白衣 2007-07-31  
galaxystar 写道
jar仓库或许还要提供版本管理, 多个项目组之间, 使用的jar包版本可能不一致.


版本管理是pom.xml的事情啊。jar仓库只管存放所有用到的版本。

相关推荐

    使用Nexus搭建Maven私服

    使用Nexus搭建Maven私服 标题:使用Nexus搭建Maven私服 描述:关于使用Nexus搭建Maven私服的开发文档。 标签:Nexus 搭建Maven 在实际的企业开发中经常会遇到的问题:在进行Maven项目开发时,所需要的构件都是...

    maven私服教程.zip

    本教程将详细介绍如何搭建和使用Maven私服,主要分为以下几个部分: 1. Maven私服的概念与作用: Maven私服是团队内部的Maven仓库,它缓存了从远程仓库下载的组件,并作为团队成员共享的资源。这减少了网络延迟,...

    阿里云ECSlinux服务器搭建和maven私服仓库技术文档.zip

    5. 配置私服仓库:在"私服搭建完成的项目配置包含拉取和上传jar包four.txt"文件中,应该包含了项目pom.xml文件中如何配置私有仓库的指南,添加或修改 `&lt;repository&gt;` 和 `&lt;distributionManagement&gt;` 标签,指定私有...

    apaas maven私服仓库

    2. **搭建私服**:常见的Maven私服软件有Sonatype Nexus和JFrog Artifactory。它们都提供了一种方便的方式来管理内部依赖,包括上传、下载和版本控制。 3. **配置Maven**:在Maven的settings.xml文件中,需要配置...

    用Artifactory管理内部Maven仓库

    通过使用Artifactory等工具搭建内部Maven仓库,团队不仅能够克服公共仓库带来的种种限制,还能享受到更加高效、稳定的构建体验。此外,通过合理规划和管理内部仓库,还能进一步优化项目开发流程,提高整体开发效率。

    maven教程,分模块构建及私服搭建

    2. **Nexus/Artifactory**:Nexus和Artifactory是常用的Maven私服软件,它们提供仓库管理、依赖代理、缓存等功能。 3. **安装与配置**:首先,下载并安装Nexus或Artifactory,然后在公司的Maven配置文件(~/.m2/...

    Maven安装部署.docx

    - **搭建私服**: 为了提高构建速度,企业通常搭建内部的 Maven 私服(如 Nexus 或 Artifactory),集中管理内部库和第三方依赖,避免频繁访问公共仓库。 - **使用私服**: 在 `settings.xml` 中配置私有仓库地址,...

    Maven的简单使用以及Maven搭建SSH

    Maven私服(Nexus或Artifactory)是用于内部共享依赖和管理发布的服务器。以下步骤演示如何搭建: 1. **安装私服**:下载并安装Nexus或Artifactory,按照官方文档配置。 2. **配置Maven**:在`settings.xml`中添加...

    maven搭建、集成,创建聚合项目问题及错误解决

    Maven中央仓库是默认的依赖获取源,但在企业环境中,为了提高依赖下载速度和管理私有库,常常会搭建Maven私服,如Nexus或Artifactory。配置私服需要修改`settings.xml`文件,指定镜像和仓库地址,这样,项目中的依赖...

    linux搭建maven私库所需的安装包.zip

    在Linux环境中搭建Maven私库是一项重要的任务,它可以帮助企业或团队管理内部依赖,提高开发效率,保持代码的一致性和可维护性。本教程将详细解释如何利用给定的安装包在Linux上创建一个Maven私有仓库。 首先,我们...

    eclipse使用maven整理文档.rar_captured7ne_eclipse mavenhelper_maven

    此外,“maven私服”意味着文档将专门讲解如何配置和使用私有Maven仓库,这对于大型企业或团队来说尤其重要,因为它能确保内部库的隐私性和提高构建速度。 【标签】"captured7ne eclipse_mavenhelper maven"暗示了...

    高级软件人才培训专家-day15-Maven高级

    常见的Maven私服解决方案包括Nexus、Artifactory等。以Nexus为例,可以通过以下步骤搭建和使用: 1. **下载并安装Nexus**:访问[Nexus官方页面](https://www.sonatype.com/nexus/repository-oss)下载最新版本的...

    相关工具和命令.zip_brickumi_maven

    ** Maven私服的搭建与使用 ** 为了提高内部项目依赖的分发效率和管理,企业通常会搭建私有Maven仓库,如Nexus或Artifactory。搭建步骤包括: 1. 安装并配置私服软件。 2. 在`settings.xml`中配置私服的仓库地址。 3...

    maven的基本使用和配置

    1. **搭建私服**:可以使用 Nexus 或 Artifactory 等工具搭建私有 Maven 仓库。 2. **配置私服**:在 `settings.xml` 文件中配置私服的地址和认证信息。 ```xml &lt;id&gt;internal.repo &lt;username&gt;admin ...

Global site tag (gtag.js) - Google Analytics