1. 安装maven,http://maven.apache.org/download.html下载apache-maven-2.2.1-bin.zip,
解压到本地,在环境变量中设置M2_HOME
并且在path中追加%M2_HOME%/bin
Dos下运行mvn -version
添加成功,注意jdk必须是1.5以上。
2. myeclipse中集成maven
选择Windows>preferences出现弹出界面
选择maven4Myeclipse按照上图选择右侧第二个复选框。
点击展开maven4Myeclipse,选择maven节点,如下图:
勾选download repoditory index updates on startup选项,配置maven JDK大于1.5的版本
3.建立本地maven库,并设置settings.xml文件
建立自己的本地maven库,你可以在本地建立文件一个文件夹来统一存放jar包资源,如E:/MVN_ERP,修改E:/apache-maven-2.2.1/conf下的settings.xml文件,修改后内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
http://maven.apache.org/xsd/setting-1.0.0.xsd">
<localRepository>E:/MVN_ERP</localRepository>
<servers>
<server>
<id>tmg-releases</id>
<username>deployment</username>
<password>deploy123</password>
</server>
</servers>
<profiles>
<profile>
<id>dev</id>
<repositories>
<repository>
<id>central</id>
<url>http://192.168.11.11:9527/nexus-webapp-1.7.2/content/groups/public/</url>
</repository>
</repositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>dev</activeProfile>
</activeProfiles>
</settings>
其中,对本地库和公司私服地址等信息进行了设置。
选择myeclipse中maven节点下的installation,点击右侧add,选择maven按装位置,并选中你前面按照的maven, 在下边选择浏览,选择刚刚设置好的settings.xml文件,并点击refesh settings按钮,全部设置完成后点击应用。具体设置如下图所示:
4.配置项目中的pom.xml,并执行
<modelVersion>4.0.0</modelVersion>
<name>IBMS</name>
<groupId>com.tmg</groupId>
<artifactId>itcpn</artifactId>
<version>3.0</version>
<packaging>war</packaging>
<distributionManagement>
<repository>
<id>tmg-releases</id>
<url>http://192.168.11.11:9527/nexus-webapp-1.7.2/content/repositories/releases/</url>
</repository>
</distributionManagement>
<build>
<sourceDirectory>src</sourceDirectory>
<resources>
<resource>
<directory>src</directory>
<excludes>
<exclude>**/*.java</exclude>
</excludes>
</resource>
</resources>
<plugins>
......
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.jvnet.hudson</groupId>
<artifactId>activation</artifactId>
<version>1.1.1-hudson-1</version>
</dependency>
.......
</dependencies>
pom.xml中jar不一致可以通过exclusion标签来排除某些jar中引用的冲突jar包
<dependency>
<groupId>xalan</groupId>
<artifactId>xalan</artifactId>
<version>2.6.0</version>
<exclusions>
<exclusion>
<groupId>xml-apis</groupId>
<artifactId>xml-apis</artifactId>
</exclusion>
</exclusions>
</dependency>
可以通过myelipse的插件图形界面来查看和排除冲突.
还可以通过引用下面插件来使用maven自带的tomcat
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat-maven-plugin</artifactId>
<version>1.0-beta-1</version>
<configuration>
<port>8082</port>
<warSourceDirectory>${basedir}/web</warSourceDirectory>
</configuration>
</plugin>
在POM 4中,<dependency>中还引入了<scope>,它主要管理依赖的部署。目前<scope>可以使用5个值:
* compile,缺省值,适用于所有阶段,会随着项目一起发布。
* provided,类似compile,期望JDK、容器或使用者会提供这个依赖。如servlet.jar。
* runtime,只在运行时使用,如JDBC驱动,适用运行和测试阶段。
* test,只在测试时使用,用于编译和运行测试代码。不会随项目发布。
* system,类似provided,需要显式提供包含依赖的jar,Maven不会在Repository中查找它。
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.4</version>
<scope>provided</scope>
</dependency>
这里意思是首先选择JDK、容器提供的servlet-api
配置好所有的插件依赖后,右击pom.xml文件run as 点击maven install系统就会自动把项目中依赖的jar包下载到本地maven库下,这个过程第一次执行时间稍微有些长。这样就完成了maven项目的构建。如果想把该项目打成包可以使用package命令,系统会按照你制定的格式把项目打包。当编译有问题时可以使用clean命令把target下编译的内容进行清理,重新来编译工程