maven快速入门第五讲——在eclispe中配置maven,然后再使用maven创建一个web项目
发布日期:2021-06-30 17:54:46 浏览次数:2 分类:技术文章

本文共 6812 字,大约阅读时间需要 22 分钟。

在eclispe中配置maven

我这里用的eclipse是Mars2这个版本的,这个版本自带maven插件。所以,先看一下你用的eclipse是不是这个版本。

在这里插入图片描述
接下来,我就要讲解如何在eclispe中配置maven了。

想必在你的电脑上已经装好了一个maven的程序,这儿就要让你的eclipse找到那个程序,因为最终运行maven项目是通过maven安装包里面的程序运行的。一些高版本的eclipse默认已经集成了maven的插件,其实还是内置了maven程序,如下图所示。

在这里插入图片描述
需要注意的是,我们一般不用内置的maven程序,原因是为了在项目中统一maven版本。那么怎么去让eclipse知道我用哪个maven程序呢?步骤如下:

  • 第一步,在以上窗口中,点击Add按钮,会弹出如下窗口,然后选择maven程序的安装目录。
    在这里插入图片描述
    接着点击Finish按钮,在窗口中勾选我们自己安装好的maven程序。
    在这里插入图片描述
  • 第二步,配置User Settings,让eclipse知道maven仓库的位置。User Settings的默认配置如下图所示:
    在这里插入图片描述
    在之前安装和配置maven时,我已经将maven本地仓库的位置设置成了D:\repository目录,所以需要将以上窗口中的C:\Users\${user.home}\.m2\repository改成D:\repository
    在这里插入图片描述
  • 第三步,构建索引。为什么要构建索引呢?maven工程去本地仓库中查找jar包时,由于本地仓库中jar包很多,查找起来速度不快,所以我们为了让它快起来,就需要建立索引(重构索引)。如何构建索引呢?首先要在eclipse中打开maven视图,可以按照下图所示的步骤来操作:
    在这里插入图片描述
    然后在弹出的窗口的输入框中输入maven,继而找到Maven Repositories。
    在这里插入图片描述
    这样我们就能看到Maven Repositories视图了,接着就要重建索引了(也可以按照下图所示的步骤来操作),重建索引需要耗费一点时间,请耐心等待。
    在这里插入图片描述
    过一会儿之后你就可以通过eclipse浏览本地仓库的内容了。
    在这里插入图片描述

使用maven创建一个web项目

现在我们要使用eclipse来创建一个maven标准的web项目了,以它作一个入门程序,实现如下功能:

  • 1)在该web项目中添加一个index.jsp页面,在页面中输出"Hello World";
  • 2)在该web项目中添加一个Servlet,例如HelloServlet,只要一访问该Servlet,就跳转到index.jsp页面。

大家可以按照如下步骤来使用eclipse创建一个maven标准的web项目:

  • 第一步,点击File菜单选项,并在下拉列表中选中New,然后点击Other,如下图所示。

    在这里插入图片描述
    接着,在弹出的窗口的输入框中输入maven,并选择Maven Project,如下图所示。
    在这里插入图片描述

  • 第二步,点击Next,根据项目的实际情况选择项目的存放目录,当然了,也可以选择【Use default Workspace location】默认工作空间。

    在这里插入图片描述
    这里我们稍微了解一下骨架选择界面,如果不跳过骨架,那么点击Next会进入骨架选择界面(如果eclipse中配置本地仓库正确,那么会显示出骨架):
    在这里插入图片描述
    从上图中可以清楚地看出,选择maven-archetype-quickstart会创建一个maven项目(即java工程),选择maven-archetype-webapp会创建一个maven项目(即java web工程)。这里我们要注意:如果不跳过骨架选择,那么创建出的maven项目目录是不完整的,所以不推荐使用骨架。

  • 第三步,点击Next, 出现如下窗口,在该窗口框中定义maven项目的坐标,如下图所示。

    在这里插入图片描述
    这里我还是要解释一遍以上界面中的重要输入项,要知道maven对所有工程的管理都是基于坐标进行管理的。
    在这里插入图片描述

  • 第四步,点击Finish,可发现新创建的maven项目报错了,如下图所示。

    在这里插入图片描述
    你有没有想过新创建的maven项目为什么会报错呢?因为它缺少了一个web.xml文件。有两种方式可以解决新创建的maven项目所报的错误,第一种方式就是手动在webapp文件夹下创建一个WEB-INF文件夹,在里面放一个web.xml文件(即自己手动创建该web.xml文件)。
    在这里插入图片描述
    其中,web.xml文件中的内容可以参考:

    hellomaven
    index.html
    index.htm
    index.jsp
    default.html
    default.htm
    default.jsp

    而第二种方式用起来就爽了,直接利用eclipse就可以很方便的创建出这个web.xml文件了,而且该文件中的内容也帮我们自己自动生成了,按照下图所示的步骤进行操作即可。

    在这里插入图片描述

  • 第五步,不知你有没发现上面新创建的maven项目的编译版本是1.5,如下图所示。

    在这里插入图片描述
    默认情况下,新建的maven项目的编译版本都是1.5。那这还玩个毛啊!要知道现在都2019年了,都快出Java 14这个版本了,但为了稳定,公司里面现在都普遍使用的Java 8,所以在这里我们需要设置编译版本为1.8,即在pom.xml中添加maven插件指定编译时候使用的JDK版本。

    org.apache.maven.plugins
    maven-compiler-plugin
    3.5.1
    1.8
    1.8
    utf-8

    以上只是调整局部JDK版本。这时,你会发现新建的maven项目依然会报错,没关系,你不用担心,因为有时候加依赖或者插件,maven项目就会报错。这时,就需要时不时地刷新一下项目了,刷新项目可以按照下图所示的步骤进行操作。

    在这里插入图片描述
    然后,在弹出的窗口中,选中要刷新的maven项目,点击OK即可刷新项目。
    在这里插入图片描述
    操作完后,你就会发现项目的编译版本为1.8了,如下图所示。
    在这里插入图片描述
    在设置项目的编译版本时,其实还有另外一种方式,那就是直接利用eclipse在pom.xml中添加maven插件指定编译时候使用的JDK版本,可以按照下图所示的步骤进行操作。
    在这里插入图片描述
    然后,在弹出的窗口的输入框中输入compile关键字,回车,即可在本地仓库中找到所有版本的maven插件,我们当然是选择最新版本的maven插件了。温馨提示:使用这种方式的前提是你本地仓库中已经下载下来了maven插件,不管你是从哪儿下载的。否则的话,输入compile关键字,回车后,会啥都没有,你品,你细细品!
    在这里插入图片描述
    接着,点击OK按钮,这时,你会发现pom.xml文件变成了下面这个样子。
    在这里插入图片描述
    在此基础上修修改改就行了。改完之后,maven项目也有可能会报错,所以最后记得刷新一下maven项目。

    说完调整局部JDK版本,那就要讲讲调整全局JDK版本了。如何调整全局JDK版本呢?很简单,找到maven安装目录的conf目录下的settings.xml文件,然后在该文件中的<profiles></profiles>标签下添加如下内容:

    jdk18
    true
    1.8
    1.8
    1.8
    1.8
    utf-8

    由于settings.xml文件里面的所有配置可应用于所有项目,所以像上面那样修改了该文件之后,每新建一个maven项目,该maven项目的编译版本都将是1.8。这样,就再也不用我们一个一个地为maven项目设置编译版本为1.8了,是不是很方便啊!还不快来试试!

  • 第六步,创建一个Servlet,例如HelloServlet,记得HelloServlet要建在src/main/java目录下。这时,你会发现新创建的HelloServlet会报一大堆编译错误,如下图所示。

    在这里插入图片描述
    为什么会报错啊?因为缺失了servlet-api-xx.jar包,自然就无法解析 javax.sevlet....。接下来就是解决依赖的问题了,即在该maven项目中引入servlet-api-xx.jar包,而在maven项目中引入jar包的方式是需要在pom.xml中添加该jar包的坐标。

    初学者该怎么找到该servlet-api-xx.jar包的坐标呢?首先,访问这个网站,进入该网站之后,可以看到如下图所示的效果。

    在这里插入图片描述
    然后,在以上页面最顶部的输入框中输入Servlet关键字进行搜索,可以找到如下图所示的内容,排在首位的就是我们要找的Servlet API。
    在这里插入图片描述
    接着,点击Java Servlet API,就可以看到所有版本的Servlet API了。
    在这里插入图片描述
    别追求新,我们要求稳定,所以不妨选择3.1.0这个版本的Servlet API。点击3.1.0,就能看到这个版本的Servlet API的坐标了。
    在这里插入图片描述
    找到3.1.0这个版本的Servlet API的坐标后,就要将其复制到maven项目的pom.xml文件中了。

    javax.servlet
    javax.servlet-api
    3.1.0

    此时,发现HelloServlet没有报一大堆编译错误了,而且还会发现javax.servlet-api-3.1.0.jar包已添加到项目中了。

    在这里插入图片描述
    其实,添加依赖还有第二种方式。如果你不想从网上搜索servlet-api-xx.jar包的坐标,那么可以直接利用eclipse在pom.xml文件中添加依赖(即该jar包的坐标),你只须按照下图所示的步骤进行操作即可。温馨提示:使用这种方式的前提是你本地仓库中已经下载下来了servlet-api-xx.jar包,不管你是从哪儿下载的。否则的话,输入servlet关键字,回车后,会啥都没有,你品,你细细品!
    在这里插入图片描述
    点击OK按钮,再保存一下pom.xml文件,这时你会发现pom.xml文件变成了下面这个样子。
    在这里插入图片描述

  • 第七步,在maven项目的根目录下创建一个index.jsp页面。

    在这里插入图片描述
    可以看到上面我所创建的index.jsp页面并没有报错,但很多时候,当你创建一个jsp页面时,jsp页面中就会报错(页面中会有很多的红叉叉)。这是因为maven项目中又缺少了一个jsp-api-xx.jar包,至于如何在pom.xml文件中添加该jar包的坐标,不用我再废话了吧!

    javax.servlet
    javax.servlet-api
    3.1.0
    javax.servlet
    jsp-api
    2.0

    添加完依赖后,你便会发现所创建的jsp页面再也没有报一大堆错误了,而且还会发现jsp-api-2.0.jar包已添加到项目中了。

    在这里插入图片描述
    至此,一个maven标准的web项目就算是创建好了。

  • 第八步,安装tomcat插件,使用maven里面带有的tomcat插件来运行以上创建好的maven项目。这里就以tomcat7这个插件来演示。如何安装tomcat7这个插件呢?安装tomcat7插件也有两种方式供我们选择。第一种方式是手动在pom.xml中添加tomcat7插件。

    org.apache.tomcat.maven
    tomcat7-maven-plugin
    2.2
    8080
    /hellomaven
    utf-8

    第二种方式是直接利用eclipse在pom.xml中添加tomcat7插件,大家可以按照下图所示的步骤进行操作。

    在这里插入图片描述
    然后,在弹出的窗口的输入框中输入tomcat7关键字,回车,即可在本地仓库中找到所有版本的tomcat7插件,我们当然是选择最新版本的tomcat7插件了。温馨提示:使用这种方式的前提是你本地仓库中已经下载下来了tomcat7插件,不管你是从哪儿下载的。否则的话,输入tomcat7关键字,回车后,会啥都没有,你品,你细细品!
    在这里插入图片描述
    接着,点击OK按钮,这时,你会发现pom.xml文件变成了下面这个样子。
    在这里插入图片描述
    在此基础上修修改改就行了。改完之后,maven项目也有可能会报错,所以最后记得刷新一下maven项目。

    接下来,就要使用maven里面带有的tomcat7插件来运行以上创建好的maven项目了,大家可以按照下图所示的步骤进行操作。

    在这里插入图片描述
    然后,在弹出的窗口中输入tomcat7:run命令,点击Run即可运行以上创建好的maven项目。
    在这里插入图片描述
    这时,eclipse控制台将会打印如下内容。
    在这里插入图片描述
    从中可以发现,使用tomcat7:run命令运行maven项目失败了,原因应该是没对java源代码进行编译。所以,可以先使用compile命令对java源代码进行编译,编译之后的.class文件将会在target/classes目录中。
    在这里插入图片描述
    此时,eclipse控制台将会打印如下内容,从中可以清楚地看到编译成功了。
    在这里插入图片描述
    这个时候,再使用tomcat7:run命令运行一下maven项目试试?可以发现使用maven里面带有的tomcat7插件来运行maven项目已经运行成功了,这从eclipse控制台打印出的内容中可以看出。
    在这里插入图片描述
    紧接着,打开Google Chrome浏览器,并访问http://localhost:8080/hellomaven/HelloServlet这样一个url地址,发现报错了,错误提示信息如下:
    在这里插入图片描述
    为啥子会报错啊?欲知原因如何,且看下讲分解。

转载地址:https://liayun.blog.csdn.net/article/details/103628137 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:maven快速入门第六讲——依赖的作用范围
下一篇:maven快速入门第三讲——maven工程的标准目录结构、maven的常用命令以及maven的生命周期

发表评论

最新留言

留言是一种美德,欢迎回访!
[***.207.175.100]2024年04月19日 08时50分37秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章