一.配置Maven的环境变量
点击“Apache-Maven官方网站”进入官网,点击左侧Download选项:
进入了下载页面,往下拉可发现当前版本是3.3.3,点击下面红框中的apache-maven-3.3.9-bin.zip就可下载,下载后解压缩到相应目录下:
新增系统变量MAVEN_HOME:即MAVEN安装目录:
在Path中加入:%MAVEN_HOME%\bin;
正在上传...取消
在cmd中输入mvn -v,若显示如下,则说明本地maven配置完成:
二.IDEA开发环境中搭建MAVEN
当配置完Maven之后,我们需要给Idea配置Maven,那么首先必须先要安装Idea,Idea的安装在这里就不累赘了,请自行百度,非常简单,下一步下一步即可,安装完成之后打开Idea设置Maven,如图所示:
单击Setting之后,设置Maven节点下的Maven home directory和user settings file和local repository 如图所示:
到这里我们整个Idea配置Maven就完成了,下面来说使用Maven开发JavaWeb项目以及使用Maven打包。
三.在IDEA中创建MAVEN项目
前面说了这么多,差不多基本的东西都保障了(前提保证你已经安装了jdk)。现在进入正题,如何来创建一个Web项目。对于不使用Maven的开发者,可以直接建一个简单的Web项目。使用Maven的话,请按照图进行操作。
菜单File->New Project可进入上图界面,首先选择左边栏Maven,再配置JDK(一般如果之前添加了JDK的话会自动填充,如未添加的话点击旁边的New将JDK目录导入即可)。勾选“Create from archetype“,然后选中4处蓝色位置webapp,点Next,进入如下界面:
这里需要填写GroupId和ArtifactId还有Version,这三个属性目的是标识你的项目的唯一性,比如Tomcat的GroupId是org.apache,即它是apache组织的项目,ArtifactId是tomcat,项目名为tomcat,而我当前使用的Version是7.0.68。这些只在发布时有用,在此可以随便填写,填好后点Next,到如下界面。
打开Maven home directory,可以发现IntelliJ IDEA已经集成了Maven 2和Maven 3两个版本,如果使用默认集成的maven的话,选择Buldled(Maven 3),直接点击Next。
我们也可以导入本地新安装的较新的Maven版本,点击蓝色箭头右边的 ... 按钮将Maven路径导入即可,点击Next:
填写项目名,选择项目保存路径,点击Finish:
进入如下界面,maven会在后台生成web项目,这需要等待一定的时间,视网络环境而定,经验发现用较新版本的maven项目生成更快,使用IDEA集成的maven可能会等待很长一段实践。
左边红框中展示了该项目的文件结构。可以发现,它在src/main下创建了一个recources文件夹,该文件夹一般用来存放一些资源文件,还有一个webapp文件夹,用来存放web配置文件以及jsp页面等,这已经组成了一个原始的web应用。选择右边红框的Enable-Auto-Import,可以在每次修改pom.xml后,自动的下载并导入jar包,这一点在后面详述。
四.MAVEN自动导入jar包
我们以SpringMVC开发为例,我们需要用到SpringMVC的相关jar包。如果不使用Maven的话,。现在使用maven的话,就不需要上网找jar包了。具体容我一一道来。
Maven所做的工作其实很简单,就是自动把你需要的jar包下载到本地,然后关联到项目中来。maven的所有jar包都是保存在几个中央仓库里面的,其中一个最常用的是Maven Repository,即,你需要什么jar包,它就会从仓库中拿给你。那么如何告诉maven需要什么jar包呢?我们看看工程目录,能找到一个pom.xml文件(这个文件在刚创建好项目时就已经展现在了大家面前),maven就是靠它来定义需求的,代码如下:
4.0.0com.gaussicspringmvcdemowar1.0-SNAPSHOTspringmvcdemo Maven Webapphttp://maven.apache.orgjunitjunit3.8.1testspringmvcdemo
我们可以看到这个文件包含了我们之前定义的本项目的gropId等信息,这些信息是该项目的标识,我们不要去改动它们。重点看标签,翻译过来是”依赖“的意思,也就是说把对每个包的需求都称为一个依赖,定义在中。在每个中,你需要提供的是所需jar包的groupId、artifactId、version这三个必要信息。比如上面我们看到引入可一个junit包,格式如下:
junitjunit3.8.1test
这是单元测试包,提供了三个基本信息,第4个scope对其他包来说是非必需的。所有jar包的引入都要满足这个格式。那么如何查看这些jar包的3个信息呢,可能刚接触是开发者还不是很熟悉,这个时候就需要查阅仓库了。比如我们需要引入Spring核心jar包spring-core,打开Maven Repository,搜索spring-core,进入如下界面:
点击进入红框选中的Spring Core,如下所示,可以看到各版本的使用情况:
选择最新版本4.2.5.RELEASE,可以看到其dependency写法如下红框所示:
我们将其复制到pom.xml中的中:
这样,Maven就会开始自动下载jar包到本地仓库,然后关联到你的项目中,下载完成后,我们展开工程目录中External Libraries:
可以发现,虽然我们只写了一个依赖,但是它导入了两个jar包,也就是说,导入某个jar包时,与它密切相关的jar包也会同时被导入进来。
除了spring-core,我还要spring-context,复制spring-core的,将spring-core改为spring-context,如下:
org.springframeworkspring-context4.2.5.RELEASE
下载完成后,查看External Libraries,会不会发现,瞬间导入了好多jar包(当然不是瞬间,这得看你的网速了)呢:
这就是Maven的强大之处,如果你需要使用SpringMVC开发网站的话,只需记住几个重要的包的名字,就可以轻松将所有包导入项目中。
长话短说,现在我们要进行SpringMVC的开发,请把你的pom.xml变成下面的样子,当然不要改你的grupId等信息(从modelVersion到url都不要动):
4.2.6.RELEASE5.1.0.Final
请在中加入以下依赖:
org.springframeworkspring-webmvc${spring.version}org.springframework.dataspring-data-jpa1.10.1.RELEASEorg.hibernatehibernate-entitymanager${hibernate.version}org.hibernatehibernate-c3p0${hibernate.version}com.mchangec3p00.9.5.2javax.servletjstl1.2mysqlmysql-connector-java5.1.39
将改成如下形式:
springmvcdemoorg.apache.maven.pluginsmaven-compiler-plugin1.81.8
我们可以发现,除了导入了spring相关jar包,还有一些其他的包,这些包都是有作用的,我们后面慢慢说。如果不使用Maven请自行下载spring、hibernate、mysql、jstl等相关jar包然后导入到工程中。至此,jar包的导入就完成了,我们按 ctrl+alt+shift+s,或者File->Project Structure查看一下项目结构,看看有什么问题:
由于之后我们要开始写代码了,先做一些配置,选择Modules,在SpringMVCDemo的src\main文件夹中新建一个文件夹,取名为java:
选中java文件夹,点击上面的Make as:Sources,该文件夹就会变成蓝色,用以保存java代码,按OK,结束配置。