1) 从
http://apache.justdn.org/tomcat/tomcat-5/v5.5.15/bin/apache-tomcat-5.5.15-embed.zip 下载Tomcat的Embeded版本。 2) 在eclipse里建一个java project(Tomcat Startup)。然后把从1)下载的tomcat解压到这个Tomcat Startup project中把Tomcat Startup/lib下所有的lib加到eclipse的Liberaries。(把Tomcat Startup/lib下所有的lib加到eclipse的Liberaries。)。如下图所示:
3) 写一个tomcat 启动类,EmbeddedTomcat.java
import java.io.File;
import java.net.InetAddress;
import org.apache.catalina.Context;
import org.apache.catalina.Engine;
import org.apache.catalina.Host;
import org.apache.catalina.startup.Embedded;
public class EmbeddedTomcat {
private String path = null;
private Embedded embedded = null;
private Host host = null;
/**
* Default Constructor
*
*/
public EmbeddedTomcat() {
}
/**
* Basic Accessor setting the value of the context path
*
* @param path - the path
*/
public void setPath(String path) {
this.path = path;
}
/**
* Basic Accessor returning the value of the context path
*
* @return - the context path
*/
public String getPath() {
return path;
}
/**
* This method Starts the Tomcat server.
*/
public void startTomcat() throws Exception {
// Create an embedded server
embedded = new Embedded();
Engine engine = null;
// Set the home directory
// System.setProperty("catalina.home", getPath());
embedded.setCatalinaHome(getPath());
// Create an engine
engine = embedded.createEngine();
// Create a default virtual host
host = embedded.createHost("localhost", getPath()
+ "/webapps");
engine.addChild(host);
engine.setDefaultHost(host.getName());
// Create the ROOT context
Context rootCxt = embedded.createContext("",
getPath() + "/webapps/ROOT");
rootCxt.setPrivileged(true);
//Create your own context
Context scoreCxt = embedded.createContext("/score", "E:\\Eclipse_WorkSpace\\Eclipse_Work\\WebDynamicAgg\\score");
host.addChild(rootCxt);
host.addChild(scoreCxt);
// Install the assembled container hierarchy
embedded.addEngine(engine);
// Assemble and install a default HTTP connector
embedded.addConnector(embedded.createConnector(
InetAddress.getByName("127.0.0.1"), 8080, false));
// Start the embedded server
embedded.start();
}
/**
* This method Stops the Tomcat server.
*/
public void stopTomcat() throws Exception {
// Stop the embedded server
embedded.stop();
}
public static void main(String args[]) {
try {
EmbeddedTomcat tomcat = new EmbeddedTomcat();
tomcat.setPath((new File(".")).getCanonicalPath());
tomcat.startTomcat();
}
catch( Exception e ) {
e.printStackTrace();
}
}
}
对其中tomcat 基础的介绍请看http://www.onjava.com/lpt/a/1547。在我的这个启动类中向tomcat中添加两个context, 一个tomcat root context, 另一个是在我的eclipse里面的一个web project。
// Create the ROOT context
Context rootCxt = embedded.createContext("",
getPath() + "/webapps/ROOT");
rootCxt.setPrivileged(true);
//Create your own context
Context scoreCxt = embedded.createContext("/score", "E:\\Eclipse_WorkSpace\\Eclipse_Work\\WebDynamicAgg\\score");
host.addChild(rootCxt);
host.addChild(scoreCxt);
假如要能认出eclipse的java project是一个web project, 你需要把你的web project的context做成发布时一样就行(本例中的context时score), 然后在eclipse中改变build path:如下图:
把所有的lib放到WEB-INF/lib 就行了。
4) 优点: 使用这种方式启动tomcat非常快, 而且更干净, 占用更少的memory。 相比下比 Myeclipse插件快很多(本人用的最多的也是Myeclipse的app server deployment 和 jsp xml editor)。而且myeclipse是在你每次保存文件时把这个文件考到对应的webapps下你的project下面。 使用这种方式还少了拷贝文件。
5) 在实际操作时当我浏览score时, 发生了找不到一些lib的错误。 一个log4j还有一个是commons-el.jar(在TOMCAT_HOME/common\lib里面这里的tomcat不是emebed版本的),把这两个lib考到Tomcat Startup/lib文件夹下, 然后再把他们add到eclipse的Liberaries中。
参考:http://www.onjava.com/lpt/a/1547
分享到:
相关推荐
在JavaEE开发中,使用内嵌的Tomcat服务器(通常称为embeded Tomcat)是一种常见的实践,它允许开发者在本地环境中快速、方便地测试和调试应用程序,而无需手动配置独立的服务器实例。本文将深入探讨如何使用embeded ...
如何在Eclipse IDE中使用maven创建一个动态Web项目. 使用的工具和技术 - Eclipse Jee Oxygen Maven 3.3.3 JavaSE 1.8 Servlet API 3.1.0 Apache Tomcat 7.0.47 (Embeded)
5. **调试与优化**:在开发过程中,调试和性能优化至关重要。课程将讲解如何使用eVC++的调试工具,定位和修复代码中的错误,以及如何优化代码以提高运行效率。 6. **实例代码分析**:课程提供的实例代码会展示一个...
在Windows嵌入式开发领域,使用Microsoft的Embedded Visual C++(EVC)工具是一个常见的选择。本课程聚焦于如何利用EVC开发通讯终端及其应用实例,通过提供的资源,包括PPT、视频、文档和示例代码,我们可以深入理解...
总的来说,嵌入式Tomcat是Java Web开发中的一个重要概念,它简化了小型Web应用的开发和部署流程,使得开发者可以更加专注于业务逻辑,而不是服务器配置。通过Maven和自定义的启动脚本,可以轻松地实现Tomcat的集成和...
2. 操作系统:嵌入式操作系统(如RTOS)的工作机制,以及如何在这些系统上开发和调试应用程序。 3. 编程语言:C/C++是嵌入式开发的主要语言,理解指针、内存管理等基础知识至关重要。 4. 硬件接口:I/O端口、串行...
2. **Web应用程序开发**:由于用户可以在网上编辑Word文档,这意味着开发了一个Web前端,可能使用HTML、CSS和JavaScript等技术,可能还涉及Ajax或WebSockets进行实时数据交互。 3. **服务器端处理**:服务器端可能...
在嵌入式系统开发中,Embeded Wizard是一款广泛使用的图形用户界面(GUI)设计工具,它允许开发者创建丰富的交互式界面,而无需深入掌握底层编程语言。然而,在处理大量字符串资源时,手动管理可能会变得繁琐。这时...
6. **调试**:在没有图形用户界面和丰富的调试工具的环境下,调试嵌入式系统是一项挑战。学会使用JTAG、UART串口调试、逻辑分析仪等工具是必要的技能。 7. **电源管理**:在电池供电的设备中,电源管理至关重要。...
### 瑞萨单片机开发环境系统用户手册解析 #### 一、High-performance Embedded Workshop 概览 ...同时,需要注意的是,在使用过程中要充分了解相关责任声明和技术支持渠道,以确保项目的顺利进行。
3. **测试验证**:在导入更新后,需要在Embeded Wizard环境中进行预览和测试,确保所有的界面元素都能正确显示新的字符串。 4. **自动化脚本**:对于频繁的转换操作,可以编写自动化脚本,减少手动操作的繁琐,提高...
这本书可能详细介绍了如何在Embest EduKit2410开发板上使用和配置WiinCE系统。 Embest EduKit2410是一款常见的嵌入式开发平台,通常用于教学和实验目的。它配备了一颗基于ARM架构的处理器,如Samsung S3C2410,这是...
8. **工具链**:配套的编译器、调试器等,方便开发者进行软件开发和调试。 此项目中的"gw-os-master"可能是指该RTOS的源代码仓库,包含了整个操作系统的源代码和相关文档。对于学习和研究者来说,深入研究这个源码...
【标题】"E语言Web 代理服务器源码 可以调试"揭示了这是一个基于E语言编写的Web代理服务器,源代码可用,便于学习和调试。E语言,全称 Embeded E,是一种轻量级的脚本语言,常用于快速开发嵌入式应用,如网络服务。 ...
QT/QTE 开发环境搭建指南 在本文中,我们将详细介绍如何在Ubuntu 9.0.4操作系统上...这个环境特别适合那些需要使用Eclipse作为IDE的开发者,它提供了强大的集成开发和调试功能,使得QT应用的开发变得更加高效和便捷。
10. **嵌入式开发环境**:开发者通常使用QEMU这样的模拟器进行开发和测试,或者使用如OpenEmbedded、Yocto Project等构建系统来自动化生成定制化的Linux发行版。 11. **调试工具**:GDB(GNU调试器)用于远程调试...
- **主机/目标开发设置**:解释了在开发过程中如何搭建主机与目标设备之间的通信环境,包括硬件接口的选择和配置。 - **主机/目标调试设置**:阐述了调试过程中的关键技术问题,如使用仿真器或JTAG接口进行调试的...
EmbeddedBuilder是专为GD32F系列芯片设计的集成开发环境,它集成了编译器、调试器、项目管理、代码编辑和资源管理等功能,为开发者提供了全方位的开发支持。版本号v1.3.5.21587表示这是该工具的最新稳定版,具有多项...
总的来说,"Embeded Explorer TestingDemo"是一个针对S60 3rd平台内嵌浏览器开发的重要参考资料,通过学习和实践,开发者能够掌握在移动设备上构建高效、稳定且用户友好的浏览器功能。而BrCtlSampleApp作为基础模板...