`
gym_1119
  • 浏览: 53056 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

初学maven(2)-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
???

礼物 2009-01-05 23:25 发表评论
分享到:
评论

相关推荐

    eclipse-maven3-plugin Maven插件离线安装包

    1. 在你的 eclipse 安装的根目录下创建两个文件夹:links,plugins(名字可以随便取),我的这两个文件夹位于:path=D:/Development/eclipse-JavaEE/eclipse(作为参考,下面用到) 2. eclipse-maven3-plugin.7z ...

    eclipse-maven3-plugin

    在安装了 **eclipse-maven3-plugin** 后,开发者可以更高效地管理项目依赖,简化构建流程,提高开发效率。同时,由于与 Apache Maven 3.3.9 的紧密结合,开发者可以充分利用 Maven 的广泛社区支持和丰富的插件生态...

    apache-maven-3.5.0

    maven-3.5.0版本的本地资源包,直接解压就可使用。 方式1 需要在系统环境变量中直接配置path中配置,路径是到bin目录。 方式2 新建配置(MAVEN_HOME),路径为是解压后的maven根目录,再在path中引用(%MAVEN_HOME%\...

    apache-maven-3.6.2-bin安装包.rar

    在这个“apache-maven-3.6.2-bin”安装包中,包含了运行Maven所需的所有核心组件、插件和文档。 1. **Maven的基本概念**: Maven是基于项目对象模型(Project Object Model, POM)的概念,通过XML文件定义项目的...

    mavenarchiver.rar

    org.apache.maven.archiver.MavenArchiver.getManifest(org.apache.maven.project.MavenProject, org.apache.maven....http://repo1.maven.org/maven2/.m2e/connectors/m2eclipse-mavenarchiver/0.17.2/N/LATEST/

    Maven更新失败,Cannot resolve plugin org.apache.maven.plugins:maven-compiler-plugin:3.1

    在apache-maven-3.5.2/conf/setting.xml中加入以下配置即可解决 alimaven aliyun maven http://maven.aliyun.com/nexus/content/repositories/central/ central junit junit Address/ ...

    apache-maven-3.2.3/3.6.0/3.6.1

    apache-maven-3.2.3、apache-maven-3.6.0、apache-maven-3.6.1,仓库用的是http://maven.aliyun.com/nexus/content/groups/public

    maven-eclipse-plugin

    【maven-eclipse-plugin】是Maven生态中的一个重要插件,它主要负责将Maven项目导入Eclipse这样的IDE中,以便于开发人员进行便捷的开发和管理。在使用Maven时,理解并熟练掌握这个插件的使用对于提高开发效率至关...

    Maven使用tomcat8-maven-plugin插件.docx

    使用 tomcat8-maven-plugin 插件可以简化项目的部署过程,无需手动配置 Tomcat 服务器。该插件可以自动将项目部署到 Tomcat 服务器上,并且可以自动配置 Tomcat 服务器的 settings。 结论 tomcat8-maven-plugin ...

    maven插件---m2eclipse的使用

    - 使用 m2e 的 `Lifecycle Mapping` 功能,将 Maven 构建过程与 Eclipse 的构建过程关联,确保构建时依赖管理正确。 ### 三、使用 m2e 运行 Maven 的 Java Web 项目 1. **手动部署** - 可以通过 `Run As` -&gt; `...

    myecplice/ecplice maven插件m2eclipse_for_eclipse_3.3

    【标题】"myecplice/ecplice maven插件m2eclipse_for_eclipse_3.3"指的是一个专为Eclipse 3.3版本设计的Maven集成插件——m2eclipse的离线安装包。m2eclipse是Eclipse开发者社区开发的一个非常重要的扩展,它将Maven...

    eclipse-maven3-plugin.zip

    Eclipse Maven3 插件,通常被称为 m2e(Maven Integration for Eclipse),是Eclipse IDE中的一个核心组件,用于支持Maven构建工具的集成。这个插件使得开发者能够在Eclipse环境中无缝地管理Maven项目,包括构建、...

    apache-maven-3.3.9.zip

    在“apache-maven-3.3.9.zip”这个压缩包中,我们找到了Maven 3.3.9版本的完整安装包。这个版本是Maven的一个稳定版本,发布于2016年,提供了一些改进和修复了之前版本中的问题。3.3.9的标签表明这是该软件的一个...

    jetty-maven-springMVC-mybitas-eclipse集成demo

    jetty-maven-springMVC-mybitas-eclipse集成demo 数据库配置:/jetty-maven/src/main/resources/applicationContext.xml 数据库导入到test数据库:/jetty-maven/src/main/resources/hms_user.sql 配置好maven环境,...

    maven-compiler-plugin-3.8.0-source-release插件

    `maven-compiler-plugin-3.8.0-source-release` 是 Maven 生态系统中不可或缺的一部分,它提供了可靠的源代码编译功能,使得开发者能够专注于编写代码,而无需关心构建过程的细节。通过理解 Maven 插件的工作原理和...

    apache-maven-3.9.6-bin

    例如,maven-compiler-plugin用于编译Java源码,maven-surefire-plugin用于执行单元测试,maven-jar-plugin则负责创建JAR文件。 在实际开发中,Maven的`settings.xml`文件通常放在用户的主目录下的`.m2`目录下,它...

    apache-maven-3.6.3.zip

    "apache-maven-3.6.3.zip"是Apache Maven的一个特定版本,即3.6.3,通常包含了所有必要的组件和库,方便用户在本地环境中快速安装和使用。 在压缩包中,我们可以看到以下几个关键文件和目录: 1. **LICENSE**: 这...

    maven-archetype-quickstart-1.1.jar包下载

    `maven-archetype-quickstart` 就是这样一个archetype,它提供了一个简单的Java应用结构,包含了一个主类和一个测试类,适合初学者或者快速原型开发。 **快速启动Archetype的使用步骤:** 1. **安装Archetype**:...

    apache-maven-3.3.9版本.zip

    例如,maven-compiler-plugin用于编译Java源代码,maven-surefire-plugin负责执行单元测试。 4. **依赖管理**:Maven使用传递性依赖管理,如果项目A依赖于项目B,而项目B又依赖于项目C,那么在构建项目A时,Maven会...

Global site tag (gtag.js) - Google Analytics