maven2之m2eclipse使用手册.docx
- 文档编号:6931802
- 上传时间:2023-01-12
- 格式:DOCX
- 页数:45
- 大小:2.38MB
maven2之m2eclipse使用手册.docx
《maven2之m2eclipse使用手册.docx》由会员分享,可在线阅读,更多相关《maven2之m2eclipse使用手册.docx(45页珍藏版)》请在冰豆网上搜索。
maven2之m2eclipse使用手册
[使用心得]maven2之m2eclipse使用手册之一简介与配置文件settings.xml
近期因朋友项目中要用到maven2,所以顺带学习了一下,由于个人比较讨厌cmd的命令使用maven,所以没有去apache下在maven的安装文件使用,而eclipse正好提供了关于maven2的插件,结果发现不需要安装maven2的安装包即可拥有maven2的命令功能.本文章基于maven-2.2.1和m2eclipse0.10.0版本和eclipse-reporting-galileo-SR2版本(以包含eclipse-jee-galileo-SR2)所写,如有跟其他版本有所出入请见谅
m2eclipse在线安装地址如下:
http:
//m2eclipse.sonatype.org/sites/m2e
安装前提必须Eclipse要求已经安装了以下插件:
subclipse(svn)在线安装地址:
http:
//subclipse.tigris.org/update_1.6.x
Mylyn在线安装地址:
http:
//download.eclipse.org/tools/mylyn/update/e3.4/
MylynExtras(JIRA支持):
http:
//download.eclipse.org/tools/mylyn/
update/extras
AspectJToolsPlatform(AJDT)在线安装地址:
http:
//download.eclipse.org/tools/ajdt/35/dev/update
WebToolsPlatform(WTP)在线安装地址:
http:
//download.eclipse.org/webtools/updates/
由于本机没有独立安装maven2的安装包,所以安装完毕后是没有setting.xml这个配置文件的,启动eclipse后如果没有之前没有指定本地jdk路径的话,会提示要求指定jdk在那个地方,编辑eclipse.ini加入以下两段文字:
-vm
C:
/ProgramFiles/Java/jdk1.6.0_20/bin
-vm:
是指定当前虚拟机的位置,默认安装好的eclipse是没有该项的,记住-vm标记必须要在-vmargs前面加否则会出现报错,
C:
/ProgramFiles/Java/jdk1.6.0_20/bin:
就是你本机jdkbin的位置了
对于eclipse.ini的位置是在你所解压的eclipse中的根目录例如我的就是在E:
\JavaWorkingTools\IDETools\Eclipse\IDE\eclipse\eclipse.ini
还有一个很重要的东西,m2eclipse已经为你创建了一个{user.dir}/.m2/repository的本地中央仓库的文件夹,你可以通过配置settings.xml来更改本地中央仓库的文件夹
{user.dir}:
就是你当前用户下的文件夹,例如我的是Edward
相对于maven2来说maven2的设置比maven1简单多了只有setting.xml和pom.xml。
setting.xml用于配置对于仓库的设置和代理仓库等设置,而pom.xml则对当前项目的管理。
由于没有使用到maven2的安装包,装完m2eclipse是没有settings.xml的文件的,需要自己手动新建一个settings.xml文件.
对于settings.xml文件
settings.xml基本结构如下:
//maven.apache.org/POM/4.0.0" xmlns: xsi="http: //www.w3.org/2001/XMLSchema-instance" xsi: schemaLocation="http: //maven.apache.org/POM/4.0.0 http: //maven.apache.org/xsd/settings-1.0.0.xsd"> settings.xml标签说明: 如下图: 主要的配置因素: localRepository: 表示本地库的保存位置,也就是maven2主要的jar保存位置,默认在${user.dir}/.m2/repository,如果需要另外设置,就换成其他的路径。 offline: 如果不想每次编译,都去查找远程中心库,那就设置为true。 当然前提是你已经下载了必须的依赖包。 Servers 在POM中的distributionManagement元素定义了开发库。 然而,特定的username和pwd不能使用于pom.xml,所以通过此配置来保存server信息 ∙id: server的id,用于匹配distributionManagement库id,比较重要。 ∙username,password: 用于登陆此服务器的用户名和密码 ∙privateKey,passphrase: 设置privatekey,以及passphrase ∙filePermissions,directoryPermissions: 当库文件或者目录创建后,需要使用权限进行访问。 参照unix文件许可,如664和775 Mirrors表示镜像库,指定库的镜像,用于增加其他库(非常有用的一个设置) ∙id,name: 唯一的标志,用于区别镜像 ∙url: 镜像的url ∙mirrorOf: 身份认证有中心的: central单一: *对于2.0.9版本以上还有 ∙*=everything ∙external: *=everythingnotonthelocalhostandnotfilebased. ∙repo,repo1=repoorrepo1 ∙*,! repo1=everythingexceptrepo1 Proxies 此设置,主要用于无法直接访问中心的库用户配置。 ∙id: 代理的标志 ∙active: 是否激活代理 ∙protocol,host,port: protocol: //host: port代理 ∙username,password: 用户名和密码 ∙nonProxyHosts: 不需要代理的host Profiles 类似于pom.xml中的profile元素,主要包括activation,repositories,pluginRepositories和properties元素 刚开始接触的时候,可能会比较迷惑,其实profiles是maven2中比较强大的功能。 从字面上来说,就是个性配置。 单独定义profile后,并不会生效,需要通过满足条件来激活。 repositories和pluginRepositories 定义其他开发库和插件开发库。 对于团队来说,肯定有自己的开发库。 可以通过此配置来定义。 如下的配置,定义了本地开发库,用于release发布。 //localhost: 8081/repo-local //localhost: 8081/repo-local releases,snapshots: 每个产品的版本的Release或者snapshot(注: release和snapshot的区别,release一般是比较稳定的版本,而snapshot基本上不稳定,只是作为快照) properties maven的properties作为placeholder值,如ant的properties。 包括以下的5种类型值: 1env.X: 返回当前的环境变量 2project.x: 返回pom中定义的元素值,如project.version 3settings.x: 返回settings.xml中定义的元素 4java系统属性: 所有经过java.lang.System.getProperties()返回的值 5x: 用户自己设定的值 Activation 用于激活此profile ∙jdk: 如果匹配指定的jdk版本,将会激活 ∙os: 操作系统 ∙property: 如果maven能检测到相应的属性 ∙file: 用于判断文件是否存在或者不存在 除了使用activation来激活profile,同样可以通过activeProfiles来激活 ActiveProfiles 表示激活的profile,通过profileid来指定。 [使用心得]maven2之m2eclipse使用手册之二m2eclipse功能介绍 这次带来的是m2eclipse插件里面的功能介绍与管理project的pom.xml,再次申明本版本基于maven2.2.1和m2eclipse0.10.00版本所写的,如有版本冲突与界面不符的话,请自行摸索. 安装完毕的m2eclipse可以通过Window-->Preferences看到多了一个Maven的选项如图: 单击Maven看到左边列表有一些选项,如下图: Offline: 在离线的状态下运行Maven,关闭从远程仓库进行下载的功能。 DebugOutput: 在Maven控制台中开启调试输出 DownloadArtifactSources: 从远程Maven仓库下载构件的源码jar文件 DownloadArtifactJavaDoc: 从远程Maven仓库下载构件的JavaDocJar文件 Downloadrepositoryindexupdatesonstartup: 在启动的时候下载并更新本地的对远程仓库的索引(默认勾选) UpdateMavenprojectsonstartup: 在启动的时候更新所有Maven的项目 Hidefoldersofphysicallynestedmodules(experimental): 嵌套的组件是否隐藏在当前文件夹里面(实验中,而本人没试过其功能) SupportmultipleMavenmodulesmappedtoasingleEclipseworkspaceproject: 支持多种Maven模块映射到Eclipse中一个workspace里 Goalstorunonprojectimport与Goalstorunwhenupdatingprojectconfiguration 以上2个在你选择当项目被引入以及项目的源码文件夹被更新的时候执行什么Maven目标。 默认的目标名为process-resources,它会拷贝并处理项目的资源文件至目标目录,以让项目可以随时打包。 如果你需要运行一些自定义的目标以处理资源文件或者生成一些支持性配置,那么定制这个目标列表就非常有用。 如果需要m2eclipse帮你选择一个目标,点击按钮Select...,会看到“Goals”对话 框。 如下图: 对于Maven有以下功能列表: Archetypes(原型): 开始的时候已经自带了2个模板一个是nexusIndexer索引另外一个是Internal(内部)的索引 AddLocalCatalog: 新增本地记录,格式为xml的记录模板,新建模板可以参考apache的地址: http: //maven.apache.org/archetype/maven-archetype-plugin/specification/archetype-catalog.html AddRemoteCatalog: 新增远程记录,顾名思义从输入远程的indexer地址 Installations(安装配置): 这个页面能让你往Eclipse环境中添加其它的Maven安装。 如果你想要让m2eclipse插件使用一个不同版本的Maven,你可以在这个页面配置多个Maven安装,这非常类似于在Eclipse中配置多个可运行的Java虚拟机。 一个被称为Maven嵌入器的Maven的嵌入版本已经被指定了。 这就是我们在Eclipse中运行Maven的版本。 如果你有另外一个Mave安装,而且你想要用它来运行Maven而不是Maven嵌入器,你可以实时的通过点击Add. 来添加另外的Maven。 安装配置页面也允许你指定全局Mavensettings文件的位置。 如果你不在这个页面指定该文件的位置,Maven会使用位于所选Maven安装目录的conf/settings.xml作为默认全局配置文件。 你也可以自定义用户settings文件的位置,默认它位于{user.dir}/.m2/settings.xml,你还可以自定义你的本地Maven仓库位置,其默认值是~/.m2/repository。 Eclipse选项中还能开启一个装饰器,它的名字是Maven版本装饰器。 这个选项可以让你在Eclipse包浏览器中看到项目的当前版本,如下图: 要开启这个选项,只要选中Maven版本修饰器选项,开启了Maven版本装饰器之后,项目的名称将会包括当前的项目版本,如图 (1)开 启了Maven版本装饰器的包浏览器”如果Maven版本修饰器没有开启,项目只会在包浏览器中列出它的名称和相对路径,如图 (2)有Maven版本装饰器的包浏览器”这个特性十分有用,你能很方便的看到项目的版本而不再需要打开POM去找version元素。 图1开启Maven版本装饰器图2没开启Maven版本装饰器 POMEditor(pom文件编辑) OpenXMLpageinthePOMeditorbydefault: 以xml默认格式打开pom.xml文件进行编辑,也就是说打开pom文件的时候直接跳到pom.xml的xml文本编辑器. ShowadvancedtabsinthePOMeditor: 在pom标签编辑器中显示高级选项,在pom.xml编辑器中如果没有勾选的话只有几个单纯的常用的选项如图(3)"没勾选advanced",如果勾选了之后将拥有更多的可选的功能如图(4)"勾选advanced" 图(3)没勾选advanced 图(4)勾选advanced ProblemReporting(错误报告) 当你项目中pom.xml安装了Jira的maven插件后,可以输入Jira(http: //jira.codehaus.org)社区的用户密码,反馈当前仓库的错误报告 Templates(模板) 创建和管理模板,对于每个插件和jar都有默认定义好的模板 UserSetting(用户设置) 用户对settings.xml文件设置.如果没有安装maven2的话默认是找不到的.可以新建一个settings.xml代替,而LocalRepository是对本地仓库的路径设置,是根据settings.xml中LocalRepository标签定义的,默认{user.dir}/.m2/repository [使用心得]maven2之m2eclipse使用手册之三第一个SimpleMavenProject与Pom.xml配置说明 第2章简单了介绍了maven2界面的配置,这次将会开始使用Mave2. 打开Eclipse->File->New->Ohter(如图1新建maven)或者按Ctrl+N的热键进入新建选项, 图1新建maven 找到Maven文件夹或者在Wizards输入Maven会出现(如图2选择新建MavenProject),选中MavenProject点next, 图2选择新建MavenProject 看到(如图3: 创建一个新的Mavenproject)有3个选项,分别是 Createasimpleproject(skiparchetypeselection): 创建一个简单的项目(跳过对原型模板的选择)[默认勾选] UserdefaultWorkspacelocation: 使用本地默认的工作空间 --Loaction: 本地工作空间目录 Addproject(s)toworkingset: 增加项目到工作集 图3创建一个新的Mavenproject 如果要按照自己的想法创建项目的话,可以选择第1个,第二个的话是根据Maven设置中Archetypes来选择对应的原型模板,第三个是可以把把其他项目引入到当前工作目录(没有限制是否是maven项目). Advanced(高级)(如图4: 新建Maven项目高级选项): 图4新建Maven项目高级选项 该选项正如上面的意思所说解决工作空间中的项目Profiles(由于我项目中没有用到该高级属性,暂时只能大概猜测一下其功能,如果谁知道的话麻烦留言谢谢)大概跟setting中的 把第二个勾去掉,这里首先带大家创建一个项目,勾选第一个,然后按next,会出现(如图5: 简单项目) 图5简单项目 Artifact(神器? ) -------GroupId: 组Id,针对一个项目的普遍唯一识别符。 相当于我们日常使用的包名,例如: org.lxh -------ArtifactId: 要新建的项目的名字 -------Version: 版本号,默认0.0.1-SNAPSHOT -------Packing: 要将该项目生成什么类型,有jar,war,ejb,ear,rar,pom,maven-plugin,maven-archetype,osgi-bundle,eclipse-plugin -------Name: 名字(估计是模板的名字) -------Description: 说明 ParentProject(父项目)以之前的项目作为基础新建项目,点Browse出现(如图6: 选择项目),可以以原有的项目作为基础新建,必须为Jar或者pom才行 图6选择项目 Advanced(高级)[如图7: simple
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- maven2 m2eclipse 使用手册