前言
Apache Maven,是一个软件(特别是Java软件)项目管理及自动构建工具,由Apache软件基金会所提供,基于项目对象模型(缩写:POM)概念,Maven利用一个中央信息片断能管理一个项目的构建、报告和文档等步骤。曾是Jakarta项目的子项目,现在为独立Apache项目。
Maven项目使用称为项目对象模型(Project object Model,POM)来配置的。项目对象模型存储在命名为pom.xml的文件中。
目录
- Eclipse-jee的安装
- Maven的安装和配置
- Eclipse中m2eclipse插件的安装
- 使用Maven来构建Web项目
- 使用Maven编译和发布项目
1.Eclipse-jee的安装
如下图所示:
1.1Eclipse简介
Eclipse是著名的跨平台开源集成开发环境(IDE)。最初主要用来Java语言开发,目前亦有人通过插件使其作为C++、Python、PHP等其他语言的开发工具。
Eclipse本身只是一个框架平台,但是众多插件的支持,使得Eclipse拥有较佳的灵活性,所以许多软件开发商以Eclipse为框架开发自己的IDE。
历史
Eclipse最初是由IBM公司开发的替代商业软件Visual Age for Java的下一代IDE开发环境,2001年11月贡献给开源社区,现在它由非营利软件供应商联盟Eclipse基金会(Eclipse Foundation)管理。2003年,Eclipse 3.0选择OSGi服务平台规范为运行时架构。2007年6月,稳定版3.3发布;2008年6月发布代号为Ganymede的3.4版;2009年6月发布代号为Galileo的3.5版;2010年6月发布代号为Helios的3.6版;2011年6月发布代号为Indigo的3.7版;2012年6月发布代号为Juno的4.2版;2013年6月发布代号为Kepler的4.3版;2014年6月发布代号为Luna的4.4版;2015年6月项目要发布代号为Mars的4.5版。
架构
Eclipse的基础是富客户机平台(即RCP)。RCP包括下列组件:
- 核心平台(启动Eclipse,运行插件)
- OSGi(标准集束框架)
- SWT(可移植构建工具包)
- JFace(文件缓冲,文本处理,文本编辑)
- eclipse工作台(即Workbench,包括视图(view)、编辑器(editor)、视角(perspectives)和向导(wizards))
Eclipse采用的技术是IBM公司开发的(SWT),这是一种基于Java的窗口组件,类似Java本身提供的AWT和Swing窗口组件;不过IBM声称SWT比其他Java窗口组件更有效率。Eclipse的用户界面还使用了GUI中间层JFace,从而简化了基于SWT的应用程序的构建。
插件
Eclipse的插件机制是轻型软件组件化架构。在富客户机平台上,Eclipse使用插件来提供所有的附加功能,例如支持Java以外的其他语言。已有的分离的插件已经能够支持C/C++(CDT)、PHP、Perl、Ruby,Python、telnet和数据库开发。插件架构能够支持将任意的扩展加入到现有环境中,例如配置管理,而决不仅仅限于支持各种编程语言。
Eclipse的设计思想是:一切皆插件。Eclipse核心很小,其它所有功能都以插件的形式附加于Eclipse核心之上。Eclipse基本内核包括:图形API(SWT/Jface),Java开发环境插件(JDT),插件开发环境(PDE)等。
Eclipse计划
Eclipse由各种不同的计划组成。以下列出部分计划:
- Eclipse计划:本身包括Eclipse平台,Eclipse富客户端平台(RCP)和Java开发工具(JDT)
- Eclipse测试和性能工具平台(TPTP):提供一个允许软件开发者构建诸如测试调试、概况分析、基准评测等测试和性能工具的平台。
- Eclipse Web工具平台计划(WTP):用Java企业版Web应用程序开发工具来扩展Eclipse平台。它由以下部分组成:HTML、JavaScript、CSS、JSP、SQL、XML、DTD、XSD和WSDL的源代码编辑器;XSD和WSDL的图形界面编辑器;Java企业版的“项目性质”(project nature)、建构器(builder)和模型(model),与一个Java企业版的导航(navigator);一个Web服务(Web service)向导和浏览器,还有一个WS-I测试工具;最后是数据库访问查询的工具与模型。
- Eclipse商业智能和报表工具计划(BIRT):提供Web应用程序(特别是基于Java企业版的)的报表开发工具。
- Eclipse可视化界面编辑器计划(VEP):一个Eclipse下创建图形用户界面代码生成器的框架。
- Eclipse建模框架(EMF):依据使用XMI描述的建模规格,生成结构化数据模型的工具和其他应用程序的代码。
- 图形化编辑器框架(GEF):能让开发者采用一个现成的应用程序模型来轻松地创建富图形化编辑器。
- UML2:Eclipse平台下的一个UML 2.0元模型的实现,用以支持建模工具的开发。
- AspectJ:一种针对Java的面向侧面语言扩展。
- Eclipse通讯框架(ECF):专注于在Eclipse平台上创建通讯应用程序的工作。
- Eclipse数据工具平台计划(DTP)
- Eclipse设备驱动软件开发计划(DSDP)
- C/C++开发工具计划(CDT):努力为Eclipse平台提供一个全功能C和C++的集成开发环境(IDE),它使用GCC作为编译器。
- PHP开发工具计划(PDT):努力为Eclipse平台提供一个全功能PHP的集成开发环境(IDE)。
- Eclipse平台COBOL集成开发环境子计划(COBOL):将构建一个Eclipse平台上的全功能COBOL集成开发环境。
- 并行工具平台(PTP):将开发一个对并行计算机架构下的一组工具进行集成的平行工具平台,而且这个平台是可移植的,可伸缩的并基于标准的。
- 嵌入式富客户端平台(eRCP):计划将Eclipse富客户端平台扩展到嵌入式设备上。这个平台主要是一个富客户端平台(RCP)组件子集的集合。它能让桌面环境下的应用程序模型能够大致同样地能运用在嵌入式设备上。
版本
从2006年起,Eclipse基金会每年都会安排同步发布(simultaneous release)。同步发布主要在6月进行,并且会在接下来的9月及2月释放出SR1及SR2版本。
(注:Eclipse正常运行的前提是在系统变量中存在名为“JAVA_HOME”的变量,值为JDK目录。)
2.Maven的安装和配置
2.1Maven的安装
进入Maven的官网,下载Maven:
解压到本地D盘:
2.2Maven的配置
进入Maven安装目录下的conf子目录中,打开setting.xml进行配置修改;
1、修改默认的本地仓库位置
Maven默认的本地仓库位置是当前用户工作目录下的“.m2/repository”,使用过程中这个目录里的文件会比较多,占用空间越来越大。一般建议更换到其他磁盘目录下,如下配置,就把默认的本地仓库更改到D:.m2\repository(这个目录结构需要自己创建好了)。
<localRepository>d:/.m2/repository</localRepository>
2、修改默认的中央仓库镜像
Maven默认的中央仓库里的文件不全,所以,都需要自行添加其他的镜像地址。在setting.xml文件中的“”标签里添加如下内容:
<mirror>
<id>ibiblio</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://mirrors.ibiblio.org/maven2/</url>
</mirror>
保存所做的修改,同时还需要把这个settings.xml文件复制一份到“D:/.m2”目录下。
3.Eclipse中m2eclipse插件的安装
1、插件安装:
Eclipse默认不支持Maven。需要给他添加m2eclipse插件,“help——Eclipse Marketplace”下搜索Maven插件,如下图所示,
2、配置
插件安装好了之后,还需要进行一些配置才能够开始使用Maven的功能。
1、设置m2eclipse插件所关联的Maven程序
依次选择Eclipse菜单栏的windows——preference菜单项:
在对话框的左侧导航栏中展开”Maven“目录结点,并选择”Installation“子结点,如下图:
这里需要关联上对应的Maven安装程序,具体操作是,在右边面板中选择”Add…“按钮,会弹出如下选择Maven安装目录的选择对话框:
2、设置自定义的本地仓库
选择如上图对话框左边菜单树”Maven“结点下的”UserSettings“子节点,它默认的配置文件是”“C:\Users\Administrator.m2/setting.xml”;
这边需要修改为我们自定义的仓库位置下的setting.xml文件: