eclipse调试web项目
Eclipse上的Web项目调试
在Eclipse中开发Web项目的首要难题就是如何进行代码调试。本文简要说明一下在Eclipse中使用Tomcat和Jetty调试Java Web项目的方法。
Tomcat插件方式。Eclipse自身可以通过下载安装Tomcat插件的方式进行调试,由于插件中集成了tomcat的运行环境,所以不需要独立安装Tomcat服务器。该插件网址http://www.eclipsetotale.com/tomcatPlugin.html,插件下载地址:http://www.eclipsetotale.com/tomcatPlugin/tomcatPluginV321.zip,下载以后以普通插件的方式安装到Eclipse中(拷贝方式或link方式)即可。但这种方式的调试环境和真实运行环境还是有一些差别,而且运行目录缺省是在Eclipse的插件目录中,运行环境不太直观,所以这里不推荐此方式。
Tomcat Server方式。首先下载安装Tomcat(地址http://tomcat.apache.org/)。然后打开Eclipse,在Eclipse中添加Tomcat Server。步骤如下:
Window->Preferences->Server->Runtime Environments->Add->选择Apache Tomcat v6.0->next->选择Tomcat的安装目录->finish。
当Tomcat被添加到Eclipse的 Server以后,Eclipse会自动创建一个名称为“Servers”的项目,其中包含了context.xml、server.xml、 tomcat-users.xml、web.xml等基本配置文件。下面开始配置web项目调试选项:
在web项目上右键->Debug As->Debug Configurations->在Apache Tomcat上右键->New,创建调试器,然后使用缺省配置选项即可。接下来就可以在项目上右键->Debug On Server开始调试web项目了。
Jetty Server方式。该配置与Tomcat大同小异。首先还是下载安装Jetty(地址:http://jetty.codehaus.org/jetty/)。然后打开Eclipse,在Eclipse中添加Jetty Server。步骤如下:
Window->Preferences->Server->Runtime Environments->Add->选择Jetty 6->next->选择Jetty的安装目录->next->设置端口->finish。
下面开始配置web项目调试选项:
在web项目上右键->Debug As->Debug Configurations->在Generic Server上右键->New,创建调试器,然后使用缺省配置选项即可。(配置信息中的jre一般选择缺省jre)。接下来就可以在项目上右键 ->Debug On Server开始调试web项目了。
Jetty调试多个web项目。当 项目比较庞大时,经常会把web项目分解成多个子web项目,分别开发,然后聚合成一个完整的web系统。由于子web项目不能独立运行,这样分解开发带 来的一个问题是开发过程中的调试问题,Jetty支持以指定的配置文件启动web服务器,并且支持多文件夹聚合web站点,因此可以配置Jetty来解决 这个问题,在调试时Jetty把分布于不同位置的各个子项目在逻辑上自动合并成一个完整项目。配置方法:
首先创建包含Jetty包的User Library:Window->Preferences->User Libraries->New(输入名称Jetty)->Add Jars->在Jetty的安装目录下选择要包含的Jetty包,这些jar包包括:{Jetty目录}/lib/ext/*.jar;: {Jetty目录}/lib/jsp-2.1/*.jar。
在项目分解时,web项目被分解为一个主Java Web项目和若干个普通Java项目,其中的主Web项目用来做配合文件维护管理和启动项目。
1.在主web项目上点击右键,选择Debug As->Debug Configurations->在Java Application上右键->New, 然后开始配置该调试器:
2.在选项卡“Main”中,设置Project选项为主Web项目;Main Class设置为org.mortbay.xml.XmlConfiguration;
3.在“Arguments”选项卡中,设置Program arguments为${workspace_loc:xxxx}/jetty.xml,其中的xxxx为主web项目名称,Working Directory中的“other”选项设置为${workspace_loc};
4.Classpath选项卡,Bootstrap Entries中首先添加上面创建的包含Jetty的jar包的User Library,然后添加项目所用到的其它User Library,User Entries中添加主web项目和其他所有的子java项目;
5.在Source中添加需要调试的源码项目;
6.以上配置完成以后,开始配置Jetty启动配置文件jetty.xml,以上的设置 “${workspace_loc:xxxx}/jetty.xml”是把jetty.xml置于主web项目的根目录下。该文件可以从Jetty安装目 录中的ext/jetty.xml文件夹中拷贝,略作修改即可。可以在jetty.xml中配置各个子项目中web资源文件的存储路径,也可以在WEB- INF中新建一个jetty-web.xml文件来单独配置子项目中的web资源。示例jetty-web.xml:
<?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd"> <Configureclass="org.mortbay.jetty.webapp.WebAppContext"> <Set name="baseResource"><Newclass="org.mortbay.resource.ResourceCollection"> <Arg> <Array type="java.lang.String"><Item>MainProject/WebContent</Item> <Item>SubProject1/WebContent</Item><Item>SubProject2/WebContent</Item> </Array> </Arg> </New> </Set> <Setname="contextPath">/vpath</Set> </Configure>
web项目一般包含jar引用包、class文件、web资源文件(jsp、js、css、图片等),jar文件是在Classpath选项卡的 Bootstrap Entries中进行配置;class文件是在Classpath选项卡中的User Entries进行配置;调试时的java源码文件是在Source选项卡中配置;web资源文件是在jetty-web.xml文件中进行配置。这样 Jetty即可根据这些配置选项启动完整的web项目了。
eclipse调试web项目的更多相关文章
- 在Eclipse中调试web项目
由于现在的公司用的是Eclipse开发web项目而且不安装MyEclipse插件,没有myclipse插件就不能在Eclipse中配置web服务器,所以也就不好对web项目进行调试.下面的方法就可以让 ...
- myeclipse与eclipse的web项目部署区别
一.myeclipse之web项目的部署(发布)流程 web项目的部署(发布)流程2008-01-18 14:35 在myeclipse下新建web工程abc.系统设置默认如下: 项目保存位置:wor ...
- eclipse 导入web项目后,线程假死
eclipse 导入web项目后,就出现关闭后,线程还存在的情况.使用java mission control 查看发现java script indexing线程在running. 关闭js验证后, ...
- Eclipse中web项目缓存路径
eclipse运行web项目后, 默认保存到 workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps ecli ...
- eclipse中web项目部署以后jsp的java文件找不到问题(Tomcat配置serverlocations)
我的开发环境:eclipse kepler (4.3)+tomcat7.0.42. 在我想看eclipse中web项目jsp文件被tomcat转换成java以后的java源文件的位置,发现正常情况下的 ...
- eclipse创建web项目web.xml配置文件笔记
1.使用eclipse创建web项目时,如果直接finish的话就没有默认生成web.xml配置文件,此时在你的项目下是看不到web.xml配置文件的,如果要查看的话可以如下操作: 右键你的项目,然后 ...
- eclipse新建web项目,发布 run as 方式和 new server然后添加项目方式。 后者无法自动编译java 成class文件到classes包下。
eclipse新建web项目,发布 run as 方式和 new server然后添加项目方式. 后者无法自动编译java 成class文件到classes包下. 建议使用run as - run ...
- eclipse 关闭web项目无用校验
eclipse 关闭web项目无用校验 CreateTime--2018年4月8日16:21:01 Author:Marydon 1.关闭javascript校验 1.1 切换到视图Navigat ...
- Eclipse导入web项目发布项目时报Tomcat version 7.0 only supports J2EE 1.2, 1.3, 1.4, and Java EE 5 and 6 Web错误解决方案
Eclipse导入web项目后,将web项目加载到server进行发布时,提示Tomcat version 7.0 only supports J2EE 1.2, 1.3, 1.4, and Java ...
随机推荐
- 关于在android4.1.x的版本不能启动支付宝问题
异常:Failure calling remote service 异常日志: INFO/<unknown>(<unknown>): java.security.spec.In ...
- openSUSE install failed
install openSUSE 13.1 with vmware play (version 6.0.0) calling the yast module 'inst_autoinit has f ...
- JavaScript设计模式与开发实践——JavaScript的多态
“多态”一词源于希腊文polymorphism,拆开来看是poly(复数)+ morph(形态)+ ism,从字面上我们可以理解为复数形态. 多态的实际含义是:同一操作作用于不同的对象上面,可以产生不 ...
- PB建数据窗口的时候会报内存错误
同事碰到了这个问题,百度了一下,按照下边的方法解决了 ------解决方案--------------------我遇到过,是powerbuilder的注册表出问题了,找到注册表中HKEY_USER ...
- C Primer Plus学习笔记
1.汇编语言是特地的Cpu设计所采用的一组内部指令的助记符,不同的Cpu类型使用不同的Cpu C给予你更多的自由,也让你承担更多的风险 自由的代价是永远的警惕 2.目标代码文件.可执行文件和库 3.可 ...
- Android -- TabHost、Fragment、状态保存、通信
工程结构 TabAFm到Ta ...
- 【每日scrum】NO.2
1.今天找到了铁大电子地图. 2.需求分析未完成,进度有点慢.
- cacti install on ubuntu
安装cacti需要的软件需要 nginx + php + mysql + rrdtool + cacti + snmp 1.nginx 安装配置 首先按照如下命令安装,明显是马虎不细心./config ...
- 基于ArcEngine的空间数据通用建库软件介绍
最近花了点时间把之前的空间数据入库功能进行了完善,在这里做一个简单的介绍,也希望大家给提点意见和建议,我的目标是做一个好用.易用.通用.稳定的入库程序. 1.软件特点: 基于模板(方案)的数据更新 ...
- NENU_CS_segment_tree
单点更新 http://acm.hdu.edu.cn/showproblem.php?pid=1166 题意:单点更新加减,区间查询求和. #include<cstdio> #define ...