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/.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\EnergyCloud-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;

Maven工程的Web调试的更多相关文章

  1. idea/eclipse下Maven工程集成web服务(tomcat、jetty)

     idea/eclipse下Maven工程集成web服务 转载请注明出处:http://www.cnblogs.com/funnyzpc/p/8093554.html 应用服务器最常用的一般有这哥仨: ...

  2. Eclispe创建maven工程缺失web.xml报web.xml is missing and <failOnMissingWebXml> is set to true的错误

    Eclispe创建maven工程缺失web.xml报web.xml is missing and <failOnMissingWebXml> is set to true的错误,一看,还缺 ...

  3. netbeans生成的maven工程没有web.xml文件 如何新建

    使用netbeans生成的maven工程没有web.xml 需要自己新建 步骤: 下一步,完成

  4. maven工程开启jetty调试

    转摘自:http://czj4451.iteye.com/blog/1942437 准备工作: a. 在pom.xml中配置jetty插件: <plugins> <plugin> ...

  5. 通过idea将maven工程转为web项目

    前言 吐槽一下网上的各种转换教程..说的真的是吵来吵去,有用的东西极少.特此自己写一篇好使的. 转换过程 建好的maven工程 建好的maven工程长这个鬼样子~~,没有使用骨架.就是普通的建立方式. ...

  6. 解决新建maven工程没有web.xml的问题

    首先确定创建maven工程时选择的打包方式为 war 创建后如图所示没有web.xml文件以及相关文件夹,错误信息:缺少web.xml文件 解决方法: 右击maven项目,找到ProjectFacet ...

  7. eclipse的maven工程Dynamic Web Module 2.3 修改为3.0 解决办法

    1. 创建Maven Web工程 2. 项目只有src/main/resources >Java Build Path导入Tomcat运行环境 3. 删除以图片红框中的文件 4. Propert ...

  8. maven工程指定web资源包,创建jsp文件

    进入项目的project structure. 选择web. 在右侧增加web资源包路径

  9. idea使用maven工程创建web项目并支持jsp

    主要要再pom文件里面添加依赖: <!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api --> & ...

随机推荐

  1. postgresql9.5 run 文件linux安装后配置成开机服务

    网上出现的比较多安装方法要么是源码安装,要么是yum安装,我发觉都要配置很多属性,比较麻烦,所以现在我在centos7长用 run文件来安装 http://get.enterprisedb.com/p ...

  2. JavaScript网站设计实践(七)编写最后一个页面 改进表单

    一.最后一个页面 contact.html.改进表单 在该页面实现的功能: 几乎所有的网站都会有表单填写,对于用户输入和填写的数据,首先我们一般现在前台验证,然后再去后台验证. 在前台最简单的验证:检 ...

  3. JAVA 上加密算法的实现用例---转载

    通常 , 使用的加密算法 比较简便高效 , 密钥简短,加解密速度快,破译极其困难.本文介绍了 MD5/SHA1,DSA,DESede/DES,Diffie-Hellman 的使用. 第 1 章基础知识 ...

  4. Eclipse Key Shortcuts for Greater Developers Productivity--reference

    Posted by Ajitesh Kumar / In Java / June 6, 2014 http://vitalflux.com/eclipse-key-shortcuts-greater- ...

  5. Git学习笔记(一)

    刚开始学Git,记录下来,讹误之处还望指教. 安装好git之后,有两个东东,如图: git bash 表示是命令行操作. git GUI 表示是图形化操作.但是这个界面用起来不方便,另一个图形化操作工 ...

  6. 使用Socket模拟一个简单的Webservice调用

    webservice是对socket的一个封装,让远程调用调用变得更加简单,那么使用socket究竟有多么麻烦呢?来看看. 做一个简单的天气查询: 服务端: public class SocketSe ...

  7. angularjs filter cut string

    angular.module('App.controllers.MyCtrl', []) .controller('MyCtrl', function (my) {}) .filter('cut', ...

  8. Bash中的数组

    变量:$VAR或者${VAR} 数组:${VAR[$i]} 打印整个数组:echo ${VAR[@]} 统计数组元素个数:echo ${#VAR[@]} 从文件读入数组(按行读入):VAR=(`cat ...

  9. Google C++ Style Guide在C++11普及后的变化

    转 http://www.cnblogs.com/chen3feng/p/5972967.html?from=timeline&isappinstalled=0&lwfrom=user ...

  10. 手势识别=读取手机联系人=ContentResolver-Day3

    手势识别=读取手机联系人=ContentResolverDay32 mobile3.0 手机设置向导页面完成 选择器没有做完成 样式提取完成 自定义控件的优化继续 抽取父类Activity 完成 手机 ...