前言:有的时候自己不知道自己是井底之蛙,这并没有什么可怕的,因为你只要蜷缩在方寸之间的井里,无数次的生活轨迹无非最终归结还是一个圆形;但是可怕的是有一天你不得不从井里跳出来生活,需要重新审视井以外的生活,你就会发现世界如此美好,我知道的如此的少!

  好比,但你看到如下代码

namespace Singleton
{
public class Singleton
{
private static Singleton singleton; private Singleton()
{
} public static Singleton GetInstance()
{
if (singleton == null)
{
singleton = new Singleton();
}
return singleton;
}
}
}

  没错,这就是几行代码,在你还没有接触到什么是单例模式的时候,一个有好奇心的人会按照machine的执行过程走一遍这段代码,一个善于总结的人在理解后还会细细体味这段代码的奥妙之处,如果是一只刚出道的青蛙,或许一面之缘后就是代码眼中过,啥也没有留;相反,你如果深谙单例模式之道,你一眼就看出了这是单例模式,而且还是懒汉式。

  说了这么多还是想说一句话:知识面很重要,思考很重要!

   正文:言归正传,今天完成了如何Tomcat如何导入到Myeclipse中,以下是自己的操作步骤。

  一:版本选型

  Tomcat还是选择经常用的Tomcat6,源码下载链接:

http://tomcat.apache.org/download-60.cgi

  Ant 选择的版本是1.7(用作编译Tomcat源码使用),下载链接:

http://archive.apache.org/dist/ant/binaries/

  Myeclipse版本:8.6

  二:获取Tomcat源码

  1.将下载好的apache-tomcat-6.0.43-src.zip解压到某文件夹中,如D:\tomcat\apache-tomcat-6.0.43-src

  2.使用Ant编译Tomcat源码

    2.1配置Ant环境:

    •     计算机-> 右键“属性”->点击“高级系统设置”->选择“高级”选项卡->点击“环境变量”,弹出对话框:

    

    添加Ant_HOME:    D:\安装包\apache-ant-1.7.0-bin\apache-ant-1.7.0(我的ant解压在D:\安装包 下)

    path:   %ANT_HOME%\bin

            

    •   验证Ant配置是否成功  

    开始->运行->cmd,输入ant -version得到

    

    2.2使用Ant编译Tomcat源码

    •   进入源码所在目录

    

    •   执行“ant download”命令,下载tomcat依赖的项目

    

    •   执行ant命令,编译成功,界面如下:

   

    这时可以发现目录D:\安装包\apache-tomcat-6.0.43-src下多了个output文件夹,进入bin目录,分别点击startup.bat和shutdown.bat启动和结束tomcat服务。

    

     点击startup.bat,Tomcat成功启动:

    

  三、Myeclipse中导入Tomcat源码

  1.新建Java Project,如TSTest

  2.右键项目->Import->File System

  选中tomcat源码所在文件位置,勾选其中的java和test两个文件夹,Into folder选择当前新建的项目,如图所示:

  

  3.导入如下jar包:

  

  注意,org.eclipse.jdt.core_3.5.2.v_981_R35x.jar可以在Myeclipse安装的目录....\AppData\Local\Genuitec\Common中找到

  这样tomcat源码项目就不会报错了。

  4.运行tomcat源码

  进入org.apache.catalina.startup下的Bootstrap.java类,右键run as->Java Application

  发现没有正常启动,控制台信息为:

2015-1-25 18:58:06 org.apache.catalina.startup.ClassLoaderFactory validateFile
警告: Problem with directory [D:\Users\Administrator\Workspaces\MyEclipse 8.6\TSTest\lib], exists: [false], isDirectory: [false], canRead: [false]
2015-1-25 18:58:06 org.apache.catalina.startup.ClassLoaderFactory validateFile
警告: Problem with directory [D:\Users\Administrator\Workspaces\MyEclipse 8.6\TSTest\lib], exists: [false], isDirectory: [false], canRead: [false]
2015-1-25 18:58:06 org.apache.catalina.startup.Catalina load
警告: Can't load server.xml from D:\Users\Administrator\Workspaces\MyEclipse 8.6\TSTest\conf\server.xml
2015-1-25 18:58:06 org.apache.catalina.startup.Catalina load
警告: Can't load server.xml from D:\Users\Administrator\Workspaces\MyEclipse 8.6\TSTest\conf\server.xml
2015-1-25 18:58:06 org.apache.catalina.startup.Catalina start
严重: Cannot start server. Server instance is not configured.

  

  从提示信息可以看出是没有加载server.xml等文件,通过查找发现需要在run as->run Configurations中的VM arguments中添加:

  -Dcatalina.home="D:\tomcat\apache-tomcat-6.0.43-src\output\build"(该目录为tomcat源码所在目录)

  运行成功,控制台打印信息为:

  

  以前无数次的启动和终止tomcat,数这次最特别,真正的从源码去控制Tomcat服务^_^

  如果觉得有用,欢迎点赞,同时欢迎加入左边公告栏群!

本文链接《探秘Tomcat(一)——Myeclipse中导入Tomcat源码

友情赞助

如果你觉得博主的文章对你那么一点小帮助,恰巧你又有想打赏博主的小冲动,那么事不宜迟,赶紧扫一扫,小额地赞助下,攒个奶粉钱,也是让博主有动力继续努力,写出更好的文章^^。

    1. 支付宝                          2. 微信

                      

探秘Tomcat(一)——Myeclipse中导入Tomcat源码的更多相关文章

  1. Eclipse中导入第三方源码的问题和备用解决方案

    在前篇<配置BeanUtils包,同时也是对导入第三包的步骤说明>中,我已经将[commons-beanutils-1.9.2.jar]包导入,但是在使用BeanUtils进行日期转换的过 ...

  2. 在Myeclipse中查看android源码就是这么easy

    在开发android 时不能查看源码必是很不爽的一件事,看过网上一些文章后(都是2.0以前的版本,跟我的2.2最新版本的配置是不一样的)不过还是给了我启示,通过配置终于可以在myeclipse中查看源 ...

  3. MyEclipse中查看struts_spring_hibernate源码

    1.spring查看源码 首先下载对应的源码包 如:spring-framework-2.5.6-with-dependencies.zip   打开spring-framework-2.5.6\di ...

  4. myeclipse中运行tomcat报错java.lang.NoClassDefFoundError

    有关myeclipse的小问题,在myeclipse中运行tomcat时显示已启动,但是无法访问localhost:8080/,显示404错误.在控制台中发现报错代码如下: java.lang.NoC ...

  5. 如何在Eclipse或者Myeclipse中使用tomcat(配置tomcat,发布web项目)?(图文详解)(很实用)

    前期博客 Eclipse里的Java EE视图在哪里?MyEclipse里的Java EE视图在哪里?MyEclipse里的MyEclipse Java Enterprise视图在哪里?(图文详解) ...

  6. 手把手教你----MyEclipse中 配置 Tomcat

    电脑上配置Tomcatserver 安装Tomcat并配置环境变量 測试是否配置成功 MyEclipse中配置Tomcat 想要开发Java Web的程序.首先在MyEclipse中必须配置Tomca ...

  7. Tomcat系列(二)- EndPoint源码解析

    在上一节中我们描述了Tomcat的整体架构, 我们知道了Tomcat分为两个大组件,一个连接器和一个容器. 而我们这次要讲的 EndPoint的组件就是属于连接器里面的. 它是一个通信的端点,就是负责 ...

  8. Myeclipse中导入新项目报叹号

    Myeclipse中导入新项目报红色叹号 原因是导入项目中,有的jar路径不对, 在上图中,先把报错的jar移除,之后将JRE开头的那个library移除,最后点击add Library,选择jre. ...

  9. 如何快速解决myeclipse中导入jquery文件的报错。

    如何快速解决myeclipse中导入jquery文件的报错. 解决: 选中错误的文件, 点击右键, 选中myeclipse,点击Exclude From Validation.

随机推荐

  1. springMVC基础配置

    web.xml文件       <?xml version="1.0" encoding="UTF-8"?><web-app version= ...

  2. C# 通过服务启动窗体(把窗体添加到服务里)实现用户交互的windows服务[转发]

    由于个人需要,想找一个键盘记录的程序,从网上下载了很多,多数都是需要注册的,另外也多被杀软查杀.于是决定自己写一个,如果作为一个windows应用程序,可以实现抓取键盘的记录.想要实现随系统启动的话, ...

  3. linux编译php的c扩展

    第一步:安装php5 第二步:打开终端[为来方便,这里使用root用户],使用CD命令进入到php5源码包的ext目录 第三步:在终端键入以下命令 ./ext_skel --extname=extes ...

  4. Web Essentials之HTML和CSS操作技巧

    返回Web Essentials功能目录 一些Javascript功能也可以用于TypeScript. 本篇目录 功能 ZenCoding LESS 功能 最小化HTML文件 选中要最小化的.html ...

  5. 算法:POJ1006 三重峰值问题

    这题有直接套公式的解法 这里提供一个O(n)的解法. package practice; import java.io.BufferedInputStream; import java.util.Sc ...

  6. tsd-提升IDE对JavaScript智能感知的能力

    在编写前端JavaScript代码时,最痛苦的莫过于代码的智能感知(Intelli Sense). 追其根源,是因为JavaScript是一门弱类型的动态语言.对于弱类型的动态语言来说,智能感知就是I ...

  7. JS闭包中的this对象

    我们知道,当函数被作为某个对象的方法调用时,this等于那个对象,不过,匿名函数的执行环境具有全局性,因此其this对象通常指向window. 下面代码很好的说明了这一点: var name = 'T ...

  8. XP之后Windows的一些变化

    看到很多Windows开发人员,尤其是C++程序员思维还是停留在XP操作系统,当然根据工作是否需要新知识 ,这本身没有错.但是实际上Vista之后的Win7, 再之后的Win8 ,Windows已经发 ...

  9. OpenCV基于傅里叶变换进行文本的旋转校正

    傅里叶变换可以用于将图像从时域转换到频域,对于分行的文本,其频率谱上一定会有一定的特征,当图像旋转时,其频谱也会同步旋转,因此找出这个特征的倾角,就可以将图像旋转校正回去. 先来对原始图像进行一下傅里 ...

  10. ios NSFileManager和NSFileHandle(附:获取文件大小 )

    转自 http://blog.csdn.net/zhibudefeng/article/details/7795946 //file 文件操作 NSFileManager  常见的NSFileMana ...