1、建立一个Maven Web项目
- file->new->other
- 进入项目类型选择对话框,如下图。我们选择Maven->Maven Project。然后点击next按钮。
- 进入工作空间选择对话框,如下图。Location->browse选择一个文件夹作为你的项目工作空间,也就是新建项目的磁盘存储位置(我选的是默认的工作空间)。然后点击next按钮,进入下一步。
- 进入maven项目类型选择对话框,如下图。
我们选择Artifact Id为maven-arrchetype-webapp。这种类型的就是maven的web项目了。点击next进入下一步。
-
进入项目属性设置对话框,如下图。填写Group Id和Artifact Id。其中Artifact Id将作为项目名称显示。点击finish完成项目新建过程。
-
得到一个如下目录结构的maven WEB工程项目。
注意:
1、如果没有显示这么多项,需要耐心等一段时间。
2、JRE System Library默认选择了1.5,后面会讲如何改成你的JDK版本。
3、若发现index.jsp出现错误提示,后面也会讲到解决办法。
新建maven WEB项目的web.xml里面是没有指定欢迎页面的,需要手动加一下。加后的配置如下。
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
2、在Eclipse中配置调试服务容器
-
【打开servers视图】。Window -> Show View -> Other
-
进入视图选择对话框,如下图。选择Server->Servers 点击Open。
-
servers视图就被加载到控制台的位置,如下图:
-
在servers视图,鼠标右单击,出现如下图浮动标签。点击New——Server。
-
进入容器选择及配置对话框,如下图。我们选择Apache->Tomcate v9.0 Server,点击next按钮。
-
进入项目添加、移除对话框,如下图。显示在这里的项目都是WEB项目,如果在新建maven项目的时候没有选择为webapp项目,在该对话框中就不会出现如下图的mavenWeb可选项目。
-
选中需要添加到容器中的web项目,点击Add,添加到server中。点击finish完成服务配置。
-
完成server配置后,会在servers视图出现一个刚刚新加的server,如下图。
-
双击添加好的server将其打开,在Overview页签中,配置好tomcat运行环境(本地tomcat安装目录)和访问端口
-
在modules页签中,配置好访问的根路径
-
在浏览器里面输入地址:http://localhost:8080/mavenWeb 便可看到首页里面的内容了。自此,eclipse中maven web项目tomcat调试环境配置已经完成。
3、出现的问题及解决办法
(1) index.jsp报错,出现 The superclass “javax.servlet.http.HttpServlet” was not found on the Java Build Path 的错误
-
解决:点击项目右键>>Build Path>>Configure Build Path,然后AddLibrary
-
在弹出的窗口,选择Server Runtime
-
点击next,选择一个自己配置好的tomcat服务【关于tomcat配置,我上一篇博文有讲,有兴趣的可以去看一下】
-
点击finish,然后apply and Close即可
(2)jdk版本不对,默认是jdk1.5,版本过低
- 解决:点击项目右键>>properties>>Java Build Path>>Libraries>>JRE System Library>>Edit,
选择当前环境的jdk
- 点击finish>>Apply and Close退出
4、原理说明
其实在eclipse中配置server的时候,eclipse会把web项目自动发布到工作空间的:
.metadata.plugins\org.eclipse.wst.server.core\
的这个目录中,具体你的项目被发布到这个目录的哪个位置要看你配置的server个数了。假如你的eclipse中只配置了一个server,那么你的项目就被发布到:
.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps
你会看到,在这个目录下有你的项目被发布到这里来了。在eclipse中运行server的时候,其实执行的代码就是这个地方的。
参考文档:https://www.cnblogs.com/hongmoshui/p/7994759.html
https://blog.youkuaiyun.com/clj198606061111/article/details/20221133