Maven这个词可以翻译为“知识的积累”,也可以翻译为“专家”或“内行”。本书将介绍Maven这一跨平台的项目管理工具。作为Apache组织中的一个颇为成功的开源项目,Maven主要服务于基于Java平台的项目构建、依赖管理和项目信息管理。无论是小型的开源类库项目,还是大型的企业级应用;无论是传统的瀑布式开发,还是流行的敏捷模式,Maven都能大显身手。
一、mavan包下载安装
下载:apache网站下载
安装:
解压apache-maven-3.0.3-bin.zip,到D:\lib_extract\maven,并设置环境变量:MAVEN_HOME,
再在path变量里添加:%MAVEN_HOME%\bin;
在cmd.exe 输入命令:maven -version
有结果输出,表示安装成功
本地仓库:C:\Users\Juven Xu\
二、eclipse安装m2eclipse
启动Eclipse之后,在菜单栏中选择Help,然后选择
Install New Software…,接着你会看到一个Install对话框,点击Work with:字段边上的Add按钮,你会得到一个新的Add Repository对话框,在Name字段中输入m2e,Location字段中输入http://m2eclipse.sonatype.org/sites/m2e/,然后点击OK。
一步步下去,最后安装成功。
除了核心组件之外,m2eclipse还提供了一组额外组件,主要是为了方便与其它工具如Subversion进行集成,这些组件的安装地址为http://m2eclipse.sonatype.org/sites/m2e-extras。
引用
重要的:
Maven SCM handler for Subclipse (Optional):Subversion是非常流行的版本管理工具,该模块能够帮助我们直接从Subversion服务器签出Maven项目,不过前提是需要首先安装Subclipse(http://subclipse.tigris.org/)。
Maven SCM Integration (Optional):Eclipse环境中Maven与SCM集成核心的模块,它利用各种SCM工具如SVN实现Maven项目的签出和具体化等操作。
不重要的:
Maven issue tracking configurator for Mylyn 3.x (Optional):该模块能够帮助我们使用POM中的缺陷跟踪系统信息连接Mylyn至服务器。
Maven SCM handler for Team/CVS (Optional):该模块帮助我们从CVS服务器签出Maven项目,如果你还在使用CVS,就需要安装它。
Maven Integration for WTP (Optional):使用该模块可以让Eclipse自动读取POM信息并配置WTP项目。、
M2eclipse Extensions Development Support (Optional):用来支持扩展m2eclipse,一般用户不会用到。
Project configurators for commonly used maven plugins (temporary):一个临时的组件,用来支持一些Maven插件与Eclipse的集成,建议安装。
m2eclipse的一些功能要求使用JDK,解决方法是配置Eclipse安装目录的eclipse.ini文件,添加vm配置指向JDK,如:
[code="txt"]--launcher.XXMaxPermSize
256m
-vm
D:\java\jdk1.6.0_07\bin\javaw.exe
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms128m
-Xmx256m
三、体验maven命令
最主要的命令:mvn clean compile、mvn clean test、mvn clean package、mvn clean install。
四、用tomcat加载带有maven的web项目
1、先保证是maven项目,如果不是,把它的pom.xml文件import进来
2、如果不是web项目,需要转换项目类型
点击该项目的properties->Project Facets->Dynamic web module,使它是tomcat能识别的web项目
3、部署maven管理jar包的项目关联
点击该项目的properties->Deployment Assembly,在里面添加三样东西
a、指定web,它的Deploy Path为:/,的web目录
b、各个需要编译的java类部署在web/WEB-INF/classes下
c、添加Maven Dependencis包
4、在tomcat部署里添加该WEB模块