Maven工程的Web调试

1.添加Server,将Web工程和Tomcat关联起来;

1)Windows->Show views->Other…->Servers,将会在下方弹出Server的窗口,然后右键添加服务器,选择Tomcat7,然后是添加工程,将web工程附加到服务器中

2.添加部署结构,这里有一个概念就是一个工程设定为Web工程过后,就需要对Deploy Assembly进行配置,将工程结构和最终输出结构一一对上,工程结构分为三部分,第一个是文件夹(folder)输出,比如src/main/java就是一个文件夹,需要将他对应到输出目录中的WEB-INF/classes中(注,输出路径,也叫classpath是在.classpath中定义的);第二类是引用工程(project),比如web工程引用到了framework工程,输出路径是WEB-INF/lib下面;第三类的是类库(Build Path Entries),Maven管理下的类库是单独维护,这样就需要添加Maven类库的引用,输出路径是WEB-INF/lib下面;

回到开始的要求,如果想要配置为Tomcat调试,必须要将pom中定义的jar包放置到指定的目录下(非Maven管理都是直接在Refference Library下面),需要额外配置将Maven构件(pom文件定义的jar包)需要编译到的目录下。也就是上面提到的第三个方面。

3.Run/Debug on Server终于知道了run on server的意思,因为之前都是使用tomcat插件或者直接运行main方法,原生的引用Server其实挺方便的,会在Eclipse中原生的打开Web页面(尽管非常丑)。

原理:Eclipse根据Deploy Assembly中做的映射,将工程中的编译、配置、资源输出到指定的目录下:${工作空间}/.meta/.pluginsorg.eclipse.wst.server.core mp0wtpwebappsEnergyCloud-Web;这里的tmp0根据具体情况而定;EnergyCloud-Web则是Web工程的名字。这里将会看到配置的目录结构(如下图)

前面的指定Server其实是在运行的时候将tomcat的进程附加到Eclipse中来;同时wst目录下输出的资源也会加载到调试进程中,同时和Eclipse的代码做关联;然后Eclipse的wst插件将会监听Http请求,将所有的对于http://localhost:port/web工程名称的请求拦截并作处理,让Eclipse中的工程来处理请求。

WST插件:Web Standard Tool;

Wtp插件:Web Tool Project;

原文地址:https://www.cnblogs.com/xiashiwendao/p/4005915.html