一,什么是maven:
Maven是什么? 比较正式的定义:Maven是一个项目管理工具,它包含了:
一个项目对象模型 (Project Object Model),
一组标准集合,
一个项目生命周期(Project Lifecycle),
一个依赖管理系统(Dependency Management System),
和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。
当你使用Maven的时候,你用一个明确定义的项目对象模型来描述你的项目,然后 Maven 可以应用横切的逻辑,这些逻辑来自一组共享的(或者自定义的)插件。
二,如何配置maven:
1,从网站http://maven.apache.org/download.html
获取maven3的文件包;
2,解压该maven包,并配置一下环境变量:
在系统变量里的添加path :D:\dev files\apache-maven-2.0.9-bin\apache-maven-3.0.4\bin
3,在dos下输入命令:mvn -v,如果配置正确将会得到maven的版本信息等。
三,设置本地仓库。
Maven的安装很简单,只需要解压即可,请设置PATH变量,这样可以使用命令行进行操作,然后就要在%MAVEN_HOME%\conf目录下,对settings.xml作下修改
<localRepository>D:/m2/repository</localRepository>
这就是设置本地仓库,目录可以根据自己的实际情况更改,不过请使用"/"正斜杠,因为我在实际使用中,发现反斜杠有时候获取不到资源。对于个人使用,设置好这个就OK了,至于Nexus配置不在本文讨论范围内,大家如有兴趣可以去看看juven xu的博客,他是目前公认的Maven专家。
四,如何用eclipse建maven项目。
1,从网站http://www.eclipse.org/downloads/
获取eclipse的文件包,解压就可以打开eclipse。
2,从网站http://java.sun.com/javase/downloads/index.jsp
获取JDK的文件,安装jdk,版本不能低于1.6.
3,配置Java的环境变量。
4,进入eclipse的操作界面,选择Help->Install New Software...在弹出的窗口中,点击Add...又会弹出一个小窗口,name输入m2eclipse,安装地址输入http://m2eclipse.sonatype.org/sites/m2e.
输入完成后,点击OK,这时Eclipse就开始查找这个插件了,请耐心等一会。 插件找到后,请勾选要安装的内容,接下来就是一般的安装流程了,此处省略500字。安装完成请重新启动Eclipse,然后再对这个插件进行一番设置。
5,设置m2eclipse
进入Perferences,选择Maven,去掉Download repository index updates on startup前的勾,默认情况是会在每次启动Eclipse的时候自动去Maven中央仓库下载索引,这无疑是非常不好的,要知道Maven中央仓库所包含的jar资源非常庞大,而且每天都会有很多新的项目上传,弄不好Eclipse还没开始用,就被这些东西搞挂掉了。
6, 接下来选择Installations将这个插件自带的Maven换成之前安装的Maven,这样就保证了版本的一致性。
7,设置好这个之后,再点击User Settings,用本机maven的settings.xml替换默认的配置文件,因为默认的设置是会将本地仓库放到系统盘符\Documents and Settings\用户目录\.m2\repository这个目录下面。
8,做完这些,我们就可以开始创建Maven工程了。选择New->other...->Maven->Maven Project,然后选择下一步
请设置工作空间路径,我的默认工作空间放在eclipse的根目录下面,这里的Location显示的应该为空,为了进行说明,特将路径显示出来。确定没问题后,Next>
这个列表显示的就是maven支持的所有项目创建类型,我们是开发web应用,所以请选择maven-archetype-webapp
最后一步输入我们要创建的项目,在Maven世界中,使用坐标来唯一标识一个构件,可以理解为项目,资源等等。Group Id表示当前项目所属的实际项目,Artifact Id定义实际项目中的一个Maven项目,根据名字就可以看出来,Group Id是一个大范围,而Artifact Id是一个小范围。比如大家都很熟悉的spring,就分成了spring-core.jar、spring-beans.jar、spring-context.jar等等。在maven里面,它的Group Id就是org.springframework,而Artifact Id则为spring-core、spring-beans、spring-context。怎么样?理解了没有?
到此,项目生成了,请展开src/main,在main目录下新建一个java文件夹,打开ssm3的项目属性,选择Java Build Path->Source->Add Folder...->勾选java,这样做的目的,就是将src/main/java这个路径作为源文件的文件夹,这和以往用MyEclipse做开发的目录结构是不同的。而maven的规则也是这样定义的,假如你不进行这个设置,就算你在main下面创建了java目录,再添加包或类时,就会有问题,大家试试,看会出现什么错误。
9, 接下来,在pom.xml里面加入maven-jetty-plugin插件,默认生成的配置都可以去掉,整个pom就只有下图所示的配置。下面是我的配置:
<project xmlns="http://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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.kx</groupId>
<artifactId>iodn</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>iodn Maven Webapp</name>
<url>http://maven.apache.org</url>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
<version>6.1.26</version>
<configuration>
<scanIntervalSeconds>3</scanIntervalSeconds>
<connectors>
<connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">
<port>9090</port>
</connector>
</connectors>
<scanTargetPatterns>
<scanTargetPattern>
<directory>src/main/webapp/WEB-INF</directory>
<excludes>
<exclude>**/*.jsp</exclude>
</excludes>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
</scanTargetPattern>
</scanTargetPatterns>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
</project>
打开 Run Configurations ,这有多种方式打开,可以从菜单 Run 里面选,也可以从工具栏选择,还可以在项目点击右键选择。
在弹出的窗口, Maven Build 里面设置运行参数,点击 Browse Workspace... 会弹出下图那个小窗口,设定 Base directory ,加入 jetty:run ,点击 Run ,启动 jetty
在浏览器中输入 http://localhost:8080/项目名。