本文的演示是从本地文件创建dynamic web project,从svn检出的同时创建dynamic web project于此类似。我们推荐使用解压版的tomcat6.x版本,来作为服务器。可以到http://tomcat.apache.org 下载。 在创建动态web项目之前,我们先创建一个Server用于在eclipse里运行和调试web项目。

创建一个Server

创建Server是为了方便在eclipse里启动和调试dynamic web project,我们以创建一个使用tomcat的server为例,基本按照截图按部就班就可以了:

  • 新建一个Server项目

  • 我们选择tomcat6,并关联到我们的tomcat目录

  • 在下图中,如果你的项目里有dynamic web project的项目,那么会自动列在左侧的框里,你可以选择其中一个或几个到右边的框里,在finish后,eclipse会把这些项目注册给该Server,即在该Server的server.xml里添加类似<context docBase="simplejeeWebContent" path="/simplejee"></context>

    的内容。如果你熟悉tomcat对这个一定很熟悉。

  • 完成后你会看到如下的一个窗口,如果看不到的话,可按照第二幅图的样子打开相应的view。

  • 这样一个server就配好了。点击上图中绿色的运行按钮,就可以使用Server下的配置运行你的tomcat了。

创建dynamic web project

eclipse本身的dynamic web project类似MyEclipse的web project,如果在MyEclipse里创建dynamic web project的话,需要在创建新项目时,选中Show All Wizards:

  • 和创建其他项目类似,还是从file->new->other->web->dynamic web project,

  • 填写项目的相关信息。在该界面里有个project contents,模式是在你的workspace下,你也可以随便选择其他位置,或则是已经存在的文件。我自己是习惯把项目文件放在其他单独的文件夹里。

注意这里的内容,如果你是用的MyEclipse的web project的话,content directory的值默认为WebRoot,你需要修改为WebContent,因为我们的脚本都是按照WebContent来写的。

点击确定后,可能会弹出下面这个警告框,是问你是否切换到和该项目类型关联的JavaEE视图上。所谓视图简单的讲就是view的组合。

  • 项目创建这样就完成了,在你左侧项目栏里会出现如下内容(具体显示方式和你是在什么view里查看是相关的,图示是Navigator下的显示形式)

  • 你还可以根据你的习惯修改一下项目的相关配置,我自己习惯将java文件编译到WebContentWEB-INFclasses下,这个你可以点击Source的tab,修改default output folder的内容。另外注意下图中的Apache tomcat v6.0这是引入的Server对应的一堆jar包,而Web App libraries是指你项目下的WebContent/lib下的所有的jar包,当你在WebContent/lib下添加新jar的时候,就不需要自己Add Jars了。

  • 在项目根目录上右键,然后run as,选run on server,就可以在eclipse里运行该项目了。

断点调试

在创建了Server和Dynamic Web Project后,调试java代码,只要在运行项目时选择Debug As就可以了,另外还有种方式是Remote Java Project。  

这种方式需要再给tomcat写个脚本

debug.bat

view source1SET CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=58882call startup.bat小技巧

如下,会持续补充中:

  • 当你的项目比较大又想在eclipse里启动tomcat来运行的话,常常会因为超时而失败,这时可以双击Servers的view里的某个Server,这时会出现,下图上半部分的内容,可以在Timeouts里将超时时间加长

在Eclipse中开发WEB项目的更多相关文章

  1. 部署Eclipse中的Web项目到Tomcat服务器运行

    用Eclipse开发Web项目时,可以通过Tomcat服务器运行Web项目,此时Web项目被部署在[WorkSpace]\.metadata\.plugins\org.eclipse.wst.serv ...

  2. 在Eclipse中调试web项目

    由于现在的公司用的是Eclipse开发web项目而且不安装MyEclipse插件,没有myclipse插件就不能在Eclipse中配置web服务器,所以也就不好对web项目进行调试.下面的方法就可以让 ...

  3. 在Eclipse中运行Web项目Jsp网页时提示端口被占用的解决办法:Several ports (8005, 8888, 8009) required by Tomcat v9.0 Server at localhost are already in use.

    问题: 在Eclipse中运行Web项目Jsp网页启动Tomcat时提示端口被占用: Several ports (8005, 8080, 8009) required by Tomcat v9.0 ...

  4. 在Eclipse中修改web项目的名称

    在Eclipse中修改web项目的名称 一.误区: 单击要修改名称的项目上右键Refactor->Rename,然后修改成另外一个名称 (光这样是不够的,哪怕你再修改web.xml中的displ ...

  5. Eclipse中的Web项目自动部署到Tomcat的webapp目录下

    Eclipse中的Web项目自动部署到Tomcat   原因 很长时间没用Eclipse了,近期由于又要用它做个简单的JSP项目,又要重新学习了,虽然熟悉的很快,但记忆总是很模糊,偶尔犯错,以前很少写 ...

  6. 【Maven】【IDEA】在idea中开发web项目,解决maven的jar包冲突的方法

    在idea中开发web项目,解决maven的jar包冲突的方法 第一步: 先对项目进行 clean ,再进行install 第二步: 出现NoSuchMethodException,ClassNotF ...

  7. eclipse中maven web项目部署时缺少classes文件或者resources文件

    写这篇博客的原因 问题描述 昨天发现eclipse中maven web项目部署时缺少classes文件或者resources文件 本来以为是很常见的原因, 依次检查"Java Build P ...

  8. 关于 Eclipse中的Web项目 部署的文件位置 查看jsp源码的部署位置

    使用 eclipse 开发web项目 会默认 部署在 工作目录下: .metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps 在这里 ...

  9. Eclipse中的Web项目自动部署到Tomcat

    原因 很长时间没用Eclipse了,近期由于又要用它做个简单的JSP项目,又要重新学习了,虽然熟悉的很快,但记忆总是很模糊,偶尔犯错,以前很少写博客,现在感觉还是很有必要的,编程中每个人对于犯过的错误 ...

随机推荐

  1. ubuntu下tensorflow安装

    1,安装驱动,cuda,cudnn,参考本人上一篇博客http://www.cnblogs.com/zxg-DL/p/9023601.html 2,安装tensorflow   接下来是关于Tenso ...

  2. 线段树模板(施工ing)

    声明 题目: 洛谷 P3372    优化之处:复杂度 O(n log n)级,可快速维护区间的各种操作(如:区间和.)

  3. 20155209实验二《Java面向对象程序设计》

    20155209实验二<Java面向对象程序设计> 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计 ...

  4. 20155301 《Java程序设计》实验二实验报告

    20155301 <Java程序设计>实验二实验报告 一.单元测试和TDD 用程序解决问题时,要学会写以下三种代码: 伪代码 产品代码 测试代码 正确的顺序应为:伪代码(思路)→ 测试代码 ...

  5. 20155321 实验四 Android程序设计

    20155321 实验四 Android程序设计 安装Android studio成功 任务一:Android Stuidio的安装测试: 参考<Java和Android开发学习指南(第二版)( ...

  6. c++静态变量

    静态变量 一.静态变量 static关键字 static int i; 二.静态变量的运用 .计算函数被调用次数 .返回指针 第45课中有这么一段 int* square3(int *x) { int ...

  7. Swift - 重写导航栏返回按钮

    // 重写导航栏返回按钮方法 func configBackBtn() -> Void { // 返回按钮 let backButton = UIButton(type: .custom) // ...

  8. 【转载】Direct3D基础知识

    原文:Direct3D基础知识 重新从头开始学习DX,以前太急于求成了,很多基础知识都没掌握就开始写程序了,结果出了问题很难解决.   1.       D3D体系结构 D3D与GDI处与同一层次,区 ...

  9. SRM 698 div1 RepeatString

    250pts RepeatString 题意:问最少修改多少次将一个字符串修改为AA的形式.可以插入一个字符,删除一个字符,修改字符. 思路:枚举分界点,然后dp一下. /* * @Author: m ...

  10. macOS 10.14 Mojave Apache设置:多个PHP版本

    [18/6/2018更新]由于Homebrew/php点击在2018年3月底被弃用,并将所有PHP公式移动到Homebrew/core,我们已经重新设计了我们的指南,使用这个新的水龙头. 如果您过去一 ...