一般开发中会使用很多jar包,使用maven后,不用自己手动去下载jar包,所有jar包由Maven统一管理,需要配置一下pom文件即可。优点:提高开发效率,方便管理项目。
maven中央库:http://repo1.maven.org/maven2/
maven国内镜像:http://maven.aliyun.com/nexus/content/groups/public
一般情况下中央库会比较慢,所以我们尽量使用国内的镜像网站,这个镜像有阿里提供的。
查询maven依赖的网址:http://mvnrepository.com/
(这个网址也可以下载jar包)
在maven库中,每个maven构建由Group Id, Artifact Id, Version唯一标识。
Group Id:代表组织和整个项目的唯一标志。一般是公司网址
Artifact Id:具体项目的名称Version:说明目前项目的版本,在引用依赖的时候确定具体依赖的版本号
一、使用教程:
1、下载压缩包:apache-maven-(版本号)-bin.zip(下载文件的名称样式)
下载地址:http://maven.apache.org/download.cgi
这个压缩包不挑位置,下载到哪里都可以,我的习惯是下载到D盘
2、修改settings.xml
2.1 解压压缩包,打开文件夹,找到conf——>settings.xml
2.2 设置maven本地库
<localRepository>d:/xymaven/.m2/repository</localRepository>
还是我的一个习惯,存在了D盘,在D盘建一个名为xymaven的文件夹,.m2/repostory两个文件夹会在下载jar时自动生成2.3 设置maven镜像(从哪里下载)
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>*</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
3、eclipse中配置maven
3.1 配置Maven路径window —> preferences —> Maven —> Installations —> add
选择maven的配置路径,apply —> ok
3.2 配置settings.xml文件的路径
window —> preferences —> Maven —>User Settings
选择settings 配置路径,apply —> ok
4、创建maven工程
4.1 new一个Maven Project工程
4.2 将create a simple project(skip archetype selection)勾选上
4.3 填写Group Id, Artifact Id, Version,如果有父项目,需要把父项目的信息页填写上
4.4 packaging 如果是java SE选择 jar;如果是web项目选择war
4.5 生成web.xml(项目上右键 —> JAVAEE Tools —> Generate Deployement Descriptor Stub)
5.创建成功
Java Resources—> src/main/java 和 src—>java 是用来放java代码的。src/main/java是以包的形式显示的,java 是以文件夹的形式显示的。(web项目下src目录下的java代码)
Java Resources —> src/main/resources 和 src—>resources是用来放一些xml配置文件的.(web项目下src目录下的xml配置文件)
例如Mapper.xml,applicationContext.xml
webapp放置的是html、css、js、jsp等文件的。还有生成的web.xml文件(web项目中webContext目录下的东西)
6.配置pom.xml
6.1 配置依赖(需要什么配置什么,我的这个是我做的微信投票系统需要使用的配置(使用了jquery,mybitis,spring,spring mvc框架),如果自己需要配置什么,去http://mvnrepository.com/ 网址中查询,选好版本复制代码就可以了)
(有一些依赖文件我们一次可能加不全,运行时会提示,再加上去就好了)
<dependencies>
<!-- 配置selvet -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
<scope>provided</scope>
</dependency>
<!--foreach表达式等需要的配置的
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency> -->
<!-- 配置spring基础依赖 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>4.2.5.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.2.5.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>4.2.5.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
<version>4.2.5.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>4.2.5.RELEASE</version>
</dependency>
<!-- 配置spring数据库连接池 -->
<dependency>
<groupId>commons-pool</groupId>
<artifactId>commons-pool</artifactId>
<version>1.3</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-dbcp2</artifactId>
<version>2.0</version>
</dependency>
<!-- 配置springmvc功能 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>4.2.5.RELEASE</version>
</dependency>
<!-- 配置springmvc文件上传 -->
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.1</version>
</dependency>
<!-- 配置spring jackson 转json字符串的-->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.5.3</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.5.3</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.5.3</version>
</dependency>
<!-- 配置mybatis -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>4.2.5.RELEASE</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.2.7</version>
</dependency>
<!-- 配置mybatis和spring整合 -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.2.4</version>
</dependency>
<!-- 配置mysql依赖 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.40</version>
</dependency>
</dependencies>
6.2 配置maven编译jdk和运行环境tomcat
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.2</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<encoding>utf-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<port>8080</port>
<path>/prettyvote</path>
</configuration>
</plugin>
</plugins>
</build>
注:第一次maven build会比较慢,因为需要联网下载所有依赖。7.运行maven工程(2种方式)
- 原来的方式,设置jdk, 部署tomcat
- Maven命令方式:
工程右键—>run as maven build —> tomcat7:run