本文的演示是从本地文件创建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. R语言-正则表达式1

    R语言的正则表达式主要用来处理文本资料,比如进行查找.替换等等. 首先是一些处理文本时会用到的函数: 字符串分割:strsplit() 字符串连接:paste(),paste0() 计算字符串长度:n ...

  2. tarjan 强连通分量

    一.强连通分量定义 有向图强连通分量在有向图G中,如果两个顶点vi,vj间(vi>vj)有一条从vi到vj的有向路径,同时还有一条从vj到vi的有向路径,则称两个顶点强连通(strongly c ...

  3. 初识Symbol

    Symbol作用域 Symbol,是ES6语法中新增的,值是由Symbol函数调用产生的. var s1 = Symbol(); console.log(s1); // Symbol console. ...

  4. 20155332 2016-2017-2《Java程序设计》第1周学习总结

    # 20155332 2016-2017-2<Java程序设计>第1周学习总结 教材学习内容总结 课本提问 1.Java平台概论:为什么需要Java程序设计语言? 2.Java平台概论:版 ...

  5. python 多线程笔记(1)-- 概念

    本文对不使用线程和使用线程做了一个对比. 假设有两件事情:听歌.看电影 一.不用线程 import time songs = ['爱情买卖','朋友','回家过年','好日子'] movies = [ ...

  6. 根据xml生成相应的对象类

    根据xml生成相应的class对象,听起来很难其实很简单,用xsd.exe就能办到 打开vs 命令行运行xsd.exe 你的xml文件地址 空格/outputdir:存放xsd的地址 ok,这是生成了 ...

  7. VirtualBox复制CentOS后提示Device eth0 does not seem to be present的解决方法

    使用VirtualBox复制一份CentOS后重新设置了网卡地址,导致启动网络服务出现下图错误 解决方案 执行命令,查看/etc/udev/rules.d/70-persistent-net.rule ...

  8. stl源码分析之priority queue

    前面两篇介绍了gcc4.8的vector和list的源码实现,这是stl最常用了两种序列式容器.除了容器之外,stl还提供了一种借助容器实现特殊操作的组件,谓之适配器,比如stack,queue,pr ...

  9. TCP/IP三次握手四次挥手分析

    流程图 全部11种状态 客户端独有的:(1)SYN_SENT (2)FIN_WAIT1 (3)FIN_WAIT2 (4)CLOSING (5)TIME_WAIT 服务器独有的:(1)LISTEN (2 ...

  10. Keepalived两节点出现双VIP的情况

    一.现象 安装有keepalived的两节点服务器10.11.4.186/187,主要做高可用,设定VIP10.11.4.185. 首先启动10.11.4.186的keepalived服务,服务启动正 ...