`
teamojiao
  • 浏览: 350390 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

maven/artifactory/m2eclipse安装全过程

阅读更多

前段时间研究过一下maven,中途因为工作忙搁置了一段时间,重新再看时发现安装过程基本忘光。只好找资料看然后再来一遍,将maven,artifactory和m2eclipse安装使用的全过程记录整理出来,备忘。另外我想这些资料应该比较适合maven的入门新手,照做一遍就可以完成三个东西的安装设置,然后就可以学习和使用了。

一. 安装maven
    安装官方标准的安装方式(http://maven.apache.org/download.html#Installation)安装,步骤如下
    1. 下载解压缩apache-maven-2.0.9-bin.zip到安装目录
    2. 增加环境变量M2_HOME,指向maven的安装目录,注意不能以"\"结尾
    3. 增加(可选)maven环境变量MAVEN_OPTS,值为"-Xms256m -Xmx512m",后续可以增加其他
    4. 修改Path,增加%M2_HOME%/bin到Path路径中
    5. 确保JAVA_HOME环境变量存在并正确设置,确保%JAVA_HOME%/bin目录在Path路径中
   
    安装完毕后,在命令行执行"mvn --version"检测maven是否正确安装。
   
    补充:
    1. 如果是使用代理上网,需要在maven的配置文件加入相应的代理信息
        否则会报错:
        The pulgin 'org.apache.maven.plugins:maven-archetype-plugin' does not exist or valid version could be found
        ......
        解决方法:
        打开文件 maven/conf/settings.xml,找到<proxies>,将原来注释掉的<proxy>打开,修改相应的信息即可。
        注意:
        1.)<host>iproxy-sh.cn.ao.ericsson.se</host> 这里不要用"http://"开头,否则会无法连接
        2. ) 如果用户名、密码不需要,可以删除<username><password>,设置为空也行。
       

二. 安装Artifactory

    按照官方文档,http://wiki.jfrog.org/confluence/display/RTF/Installing, 标准安装,简单说就是三步:
    1. 下载并解压缩最新版本的artifactory-1.3.0-beta-2.zip
    2. 双击bin目录下的artifactory.bat文件,启动artifactory。
        注意必须保证JAVA_HOME正确设置,并且jdk的版本是5.0或更高。
    3. 用浏览器打开http://localhost:8081/artifactory,使用admin/password登录
   
    配置Artifactory,在Artifactory安装目录下的etc目录下,比较常用的是修改jetty.xml中的端口设置,将默认的8081端口
    修改为其他。还有如果Artifactory是需要使用代码连接网络,需要修改artifactory.config.xml中的proxies。
   
三. 安装m2eclipse插件
   
    参照官网文档http://m2eclipse.codehaus.org/。
    找了一下没有zip下载,只能用eclipse通过update site下载安装,无法使用我最喜欢的link方式,有些遗憾。
    安装地址如下:
        http://m2eclipse.sonatype.org/update/
    更新后会自动变成三个site,一个不可用,另外两个版本同步,有新旧两个版本可以选择,当然选最新的一个200807**的版本。
   
    安装好后,就可以使用m2eclipse插件为项目增加pom.xml文件了。有了m2eclipse的图形界面使得操作显得很简单,容易理解和掌握。

update 20081128:
    升级操作系统到vista,jdk到6.7,eclipse到3.4后,安装新版本的maven,一切正常,但是启动时会弹出窗口,说maven
需要eclipse在jdk下运行,而不应该是jre(奇怪以前安装时怎么没有这种要求,难道是新版本引入的新功能?)。按照提示给出的建议进行以下操作:

1.要求修改eclipse.ini文件
    加入两行代码,注意不要写在一行,否则无法生效。
    -vm
    C:\aoxj\soft\java\jdk\jdk67\bin\javaw
2.设置installedJRE
    直接进入eclipse的设置,在installedJRE中加入新的jre指向jdk,然后将默认的jre删除。
   
四. 技巧小结
    这几天的摸索中,发现一些maven和m2eclipse的使用小技巧,总结下来主要有以下几点:
   
    1. repositories设置不要放到项目的pom.xml文件中
        在使用Artifactory搭建私服后,肯定是需要将repositories设置为我们的私服地址的。下面的这段代码就可以完成我们
        的需要:
      <repositories>
        <repository>
            <id>artifactory</id>
            <name>local private artifactory</name>
            <url>http://127.0.0.1:8081/artifactory/repo/</url>
        </repository>
      </repositories>
        但是这段代码放到哪里比较好呢?按照maven的设置,可以放到%MAVEN_HOME%/conf/settings.xml, ~/.m2/settings.xml和
        项目的pom.xml文件中,上面三个设置可以覆盖,pom.xml中设置是最直接了当的。但是考虑到repositories信息是完全有
        可能变化的,尤其是使用私服,万一公司的私服换个地址难道所有项目的pom.xml文件都设置一遍? 还有pom.xml文件是用
        来保存当前项目的多种依赖信息的,repositories信息应该和当前具体项目没有直接联系。因此不应该放到pom.xml文件中。
        尤其在pom.xml文件需要保存到cvs,subversion等版本控制系统中,可变的repositories信息就更不合适保存了。
        因此需要将repositories信息设置在%MAVEN_HOME%/conf/settings.xml或~/.m2/settings.xml,这样就足够灵活了。
       
        实践中发现一个比较奇怪的地方,我使用的是maven2.0.9版本,修改%MAVEN_HOME%/conf/settings.xml设置居然无效,只能
        copy一份到~/.m2/settings.xml(这个文件默认是不会自动建立的),然后修改就可以正常生效了。没有查清楚原因,好在
        这两个地方对我没有实质区别,放~/.m2/也能接受,只是要记得备份一次避免重装系统时被删除。
       
    2. settings.xml设置repositories的最简单方式
        发现最简单的办法就是打开settings.xml文件最下面的activeProfiles设置:
        <activeProfiles>
            <activeProfile>artifactory</activeProfile>
        </activeProfiles>
        当然要先设置好对应的profile,对于简单场景,一个就足够了,这里我指向我搭建在本机的私服:
       
    <profile>
      <id>artifactory</id>
      <repositories>
        <repository>
            <id>artifactory</id>
            <name>local private artifactory</name>
            <url>http://127.0.0.1:8081/artifactory/repo/</url>
        </repository>
      </repositories>
      <pluginRepositories>
        <pluginRepository>
            <id>artifactory</id>
            <name>local private artifactory</name>
            <url>http://127.0.0.1:8081/artifactory/plugins-releases</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </pluginRepository>
    </pluginRepositories>
    </profile>
   
    顺便提一下settings.xml文件中localRepository的设置,这个设置用来知名localRepository的目录,默认不打开,使用默认值
    ~/.m2/repository,个人不喜欢,我就直接修改为固定位置:
    <localRepository>G:/soft/maven/localRepository</localRepository>
       
    3. dependency的classifier必须正确设置
        在下载testng时出现问题,始终无法从官网下载testng的jar包,但是可以下载到testng-5.8.pom文件。反复查找才发现是
        testng的jar包是区分jdk版本的,大家从这里可以看到
        http://repo1.maven.org/maven2/org/testng/testng/5.8/
        testng的jar包是有1.4和1.5的两种下载。增加classifier设置制定具体jdk版本之后就可以正常工作了。
        当然如果artifact没有jdk的差异就可以不需要设置这个参数。
        <dependency>
            <groupId>org.testng</groupId>
            <artifactId>testng</artifactId>
            <version>5.8</version>
            <classifier>jdk15</classifier>
        </dependency>
       
    4. groupId和artifactId的获取方式
        使用maven,很直接就会遇到这个问题,到底这个东西的groupId和artifactId是什么呢?总不能瞎猜吧?
        这里推荐这个artifact查询网站http://mvnrepository.com/,可以查找到25000+个artifact的信息,基本我们能用到的都
        有了。
        结合官网http://repo1.maven.org/maven2/ 页面,基本可以搞定所有问题。上面testng需要设置classifier的问题我就是看到
        http://repo1.maven.org/maven2/org/testng/testng/5.8/这个页面后才发现问题所在的。

    5. attifactory的http proxy设置
        上面attifactory安装时简单的介绍了一下 的http proxy设置,需要修改artifactory.config.xml中的<proxies>。但是这个是不够的,必须要再在<remoteRepository>中明确用<proxyRef>指明使用哪个代理,格式参考如下:
        <remoteRepository>
            .........
            <url>http://people.apache.org/repo/m2-snapshot-repository</url>
            <proxyRef>your-proxy</proxyRef>
        </remoteRepository>
proxies中key要对应好
        <proxies>
            <proxy>
            <key>your-proxy</key>
            ......
        </proxies>
   
五. 比较有价值的参考资料
    陆续google到的一些资料,比较好.
    maven官网的资料
        很全,很完整,非常值得看一遍,只是有点太多了,挺耗时间。而且是英文,暂时没有知道对应的中文版本。
    一些细碎的资料,主要是blog之类
    1) maven settings.xml
        http://blog.csdn.net/totogogo/archive/2007/12/18/1946691.aspx
    2)  Maven dependency and repository
        http://blog.csdn.net/totogogo/archive/2007/12/20/1956381.aspx
    3)  maven profiles
        http://blog.csdn.net/totogogo/archive/2007/12/19/1953379.aspx
   

分享到:
评论

相关推荐

    maven3+eclipse插件(含图形编辑pom插件)

    - **M2Eclipse 插件**:Eclipse 用户可以通过 M2Eclipse(Maven for Eclipse)插件来无缝集成 Maven 功能。这个插件允许开发者在 Eclipse 环境下直接操作 Maven 项目,包括构建、管理依赖、更新项目等。 - **图形...

    Maven工程开发环境搭建及常用操作

    5. **M2Eclipse插件安装**:为了在Eclipse中集成Maven,需要安装M2E (Maven Integration for Eclipse) 插件。可以通过Eclipse的内置更新管理器或直接从Eclipse的M2E网站下载并安装。 6. **设置Maven Classpath变量*...

    Maven安装部署.docx

    - **配置环境变量**: 设置 `M2_HOME` 指向 Maven 的安装目录,将 `%M2_HOME%\bin` 添加到 `PATH` 环境变量。 - **配置 `settings.xml`**: 在 Maven 的安装目录下的 `conf` 文件夹内,编辑 `settings.xml` 文件,...

    apache-maven-3.6.1压缩包

    - Eclipse可以通过Maven插件(M2Eclipse)实现与Maven的集成,便于在IDE内管理Maven项目。 - 使用M2Eclipse,可以方便地导入Maven项目,同步POM,运行Maven构建等操作。 6. Maven的仓库管理: - Maven使用中央...

    Maven学习手册

    本手册旨在帮助开发者深入理解和有效地使用Maven,结合作者的实际项目经验,涵盖了从安装到高级特性的全过程。 ### 1. Maven简介 1.1 **MAVEN 简介** Maven是由Apache软件基金会开发的一个项目管理工具,其核心...

    maven配置手动下载jar包,用于离线导入

    1. **下载依赖**:首先,你需要知道项目所需的全部依赖,并在线环境下使用Maven的`dependency:get`命令或通过IDE(如IntelliJ IDEA,Eclipse)下载这些依赖。例如,可以在命令行中输入: ``` mvn dependency:get -...

    maven的配置

    在Eclipse中,进入`Window &gt; Preferences &gt; Maven`,取消勾选`Use maven embedded`,然后点击`Browse...`选择你的Maven安装目录。 - **设置Maven Settings**: 在Eclipse中,你需要导入Maven的配置文件`settings.xml...

    maven学习笔记

    - **安装 m2eclipse 插件**:m2eclipse 是 Eclipse 的一个插件,提供了对 Maven 的支持。 - **安装方法**:可以通过 Eclipse 的插件管理器来安装 m2eclipse。 #### 四、Maven 仓库管理 - **本地仓库**:Maven ...

    maven3.0.4学习教程

    3. 按照提示完成安装过程。 #### 三、依赖管理 ##### 3.1 Pom.xml文件结构说明 `pom.xml`文件是Maven项目的核心配置文件,它包含了项目的元数据以及构建项目所需的所有信息,包括: - `&lt;groupId&gt;`:项目组ID。 - ...

    Maven快速上手

    2. **环境变量配置**: 配置`M2_HOME`环境变量指向Maven的安装目录,并将`%M2_HOME%\bin`添加到`PATH`环境变量中。 3. **配置settings.xml**: Maven的配置文件位于`~\.m2\settings.xml`(Windows系统)或`$HOME/.m2/...

    maven的本地仓库jar包

    Maven是Java开发中的一款项目管理和构建工具,它通过依赖管理简化了项目的构建、测试和部署过程。Maven的本地仓库是Maven系统的核心组件之一,它存储着项目所需的各类依赖库,包括JAR包。当你在开发过程中引用了一个...

    MAVEN使用最佳实践

    尽管大多数集成开发环境(IDEs)如IntelliJ IDEA和Eclipse都集成了Maven,但直接使用命令行的Maven可以避免版本冲突和IDE特定的问题。保持IDE与系统Maven版本一致可以确保构建的一致性。 1.4 **搭建内部仓库管理器*...

    Maven配置好的原文件

    默认的本地仓库是`%USER_HOME%\.m2\repository`,远程仓库通常是中央Maven仓库,也可以是私有的Nexus或Artifactory。 总结,本资源提供的Maven配置文件可以帮助快速搭建Java开发环境,特别是对于使用Spring Boot的...

    Maven教程.rar

    对于企业内部使用的私有库,Maven可以配置私有的Artifact Repository(如Nexus或Artifactory),这有助于管理内部组件和限制对外部网络的访问。私有仓库可以缓存公共库,避免频繁下载,同时也可以发布和存储内部项目...

    repository

    Maven本地仓库位于用户的机器上,通常是`~/.m2/repository`目录下(Windows系统可能是 `%USERPROFILE%\.m2\repository`)。当Maven构建项目时,它首先会查找本地仓库,如果找不到所需的依赖,它将去远程仓库下载。...

    maven3.0.4详解

    - Nexus的安装过程简单直观,可以通过下载安装包进行安装。 2. **私服介绍** - 私服的主要作用是缓存中央仓库中的依赖,并且可以上传企业内部的组件。 - 可以提高构建速度,降低网络带宽消耗。 3. **开启索引...

    apache-maven-3.6.3工具包

    安装完成后,通过设置环境变量`M2_HOME`指向解压的目录,并将`bin`目录添加到系统PATH,就可以在任何地方使用Maven命令了。在实际开发中,Maven与IDE集成使用,如IntelliJ IDEA或Eclipse,能提供更友好的开发体验。

    maven 入门到精通.txt

    - 将项目发布到私有仓库(如Artifactory)或公共仓库(如Maven Central)。 - 需要配置仓库地址、用户名和密码等信息。 5. **Maven 插件开发**: - 使用Maven Plugin Plugin创建自定义插件。 - 插件可以执行...

Global site tag (gtag.js) - Google Analytics