Eclipse中Maven WEB工程tomcat调试

时间:2022-08-29 15:54:37

       最近没事了玩一下maven,使用maven管理工程中的依赖包非常的方便。建立maven web工程的时候开始不知道怎么用tomcat来调试,总是使用mave的tomcat插件发布了后来调试,觉得非常的麻烦,网上找了点材料,看看maven web工程不需要发布出来就直接用tomcat调试。下面对研究成果做一个记录,备忘。

       Eclipse中建立maven工程,首先保证eclipse已经安装了m2eclipse插件。EclipseJEE 4.3.2版本已经集成了该插件,无需再安装。这个版本的eclipse下载地址为:http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/kepler/SR2/eclipse-jee-kepler-SR2-win32.zip

一、建立一个maven  WEB项目

1、file->new->other

Eclipse中Maven WEB工程tomcat调试

2、 进入项目类型选择对话框,如下图。我们选择Maven->Maven Project。然后点击next按钮。

Eclipse中Maven WEB工程tomcat调试

3、进入工作空间选择对话框;如下图。Location->browse选择一个文件夹作为你的项目工作空间,也就是新建项目的磁盘存储位置。然后点击next按钮,进入下一步。

Eclipse中Maven WEB工程tomcat调试

4、进入maven项目类型选择对话框,如下图。

我们选择Artifact Id为maven-arrchetype-webapp。这种类型的就是maven的web项目了。点击next进入下一步。

Eclipse中Maven WEB工程tomcat调试

5、进入项目属性设置对话框,如下图。填写Group  Id和Artifact Id。其中Artifact Id将作为项目名称显示。点击finish完成项目新建过程。

Eclipse中Maven WEB工程tomcat调试

6、得到一个如下目录结构的maven WEB工程项目。

Eclipse中Maven WEB工程tomcat调试

7、新建maven WEB项目的web.xml里面是没有指定欢迎页面的,需要手动加一下。加后的配置如下。

<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app>
<display-name>Archetype Created Web Application</display-name>

<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>

</web-app>

二、eclipse中配置调试服务容器

1、打开servers视图。Window -> Show View -> Other

Eclipse中Maven WEB工程tomcat调试

2、进入视图选择对话框,如下图。选择Server->Servers 点击OK确定。

Eclipse中Maven WEB工程tomcat调试

3、servers视图就被加载到控制台的位置,如下图

Eclipse中Maven WEB工程tomcat调试

4、在servers视图,鼠标右单击,出现如下图新建server浮动标签。点击Server。

Eclipse中Maven WEB工程tomcat调试

5、进入容器选择及配置对话框,如下图。我们选择Apache->Tomcate  v6.0 Server,点击next按钮。

Eclipse中Maven WEB工程tomcat调试

6、进入项目添加、移除对话框,如下图。显示在这里的项目都是WEB项目,如果在新建maven项目的时候没有选择为webapp项目,在该对话框中就不会出现如下图的mavenWeb可选项目。

Eclipse中Maven WEB工程tomcat调试

7、选中需要添加到容器中的web项目,点击Add,添加到server中。点击finish完成服务配置。

Eclipse中Maven WEB工程tomcat调试

8、完成server配置后,会在servers视图出现一个刚刚新加的server,如下图。

Eclipse中Maven WEB工程tomcat调试

9、这时候server配置基本完了,但是如果这时候选择服务启动,服务启动不成功。

Eclipse中Maven WEB工程tomcat调试

警告 :[SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property'source' to 'org.eclipse.jst.j2ee.server:mavenWeb' did not find a matchingproperty.
10、双击刚刚新加的那个服务

Eclipse中Maven WEB工程tomcat调试

11、进入服务配置界面,如下图。选中:Publish module contexts to separate XML files,在停止服务的情况下保存配置。不停止服务,无法保存修改的。重新启动服务,便不会出现上面的警告了。

Eclipse中Maven WEB工程tomcat调试

12、在浏览器里面输入地址:http://localhost:8080/mavenWeb   便可看到首页里面的内容了。自此,eclipse中maven web项目tomcat调试环境配置已经完成。

Eclipse中Maven WEB工程tomcat调试

三、原理说明

其实在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的时候,其实执行的代码就是这个地方的。

Eclipse中Maven WEB工程tomcat调试