1、下載、安裝、配置 php
一、 JDK 下載oracle或者IBM JDK 1.6版本 html
二、 ANT http://ant.apache.org java
三、 Myeclipse http://www.eclipse.org/downloads apache
四、 安裝這裏再也不詳細說!Tomcat的運行須要用到Ant。 瀏覽器
五、 添加環境變量JAVA_HOME和ANT_HOME。將%ANT_HOME%\bin添加到PATH中 tomcat
六、 之因此用Myeclipse是由於Tomcat中用到了javaee.jar包的類,若是用eclipse的話還要單獨下載javaee.jar。 oracle
七、 利用TortoiesSVN檢出Tomcat的源碼或者到官網去下載。 eclipse
2、編譯Tomcat6源碼
從Tomcat的源代碼文件找到build.properties.default文件,打開這個文件找到下面這行:
base.path=/usr/share/java
這個路徑是用來存放即將下載的文件的目錄,因爲我用的是Windows,因此改成適合個人目錄:
base.path=/Tomcat-DownLoad //最後生成的目錄在源文件所在盤符的根目錄下,本例爲F:/Tomcat-DownLoad jsp
/** ui
base.path=D:/Workspace/JEE/workspace/TOMCAT_6_0_26/share
最初用的是這種形式,確在目錄中建立了一個特別的名字,不知什麼緣由,因此用上面的形式
**/
這個路徑是用來存放編譯Tomcat時實時下載jar的文件夾,修改後另存爲build.properties。
接着在D:\Workspace\JEE\workspace\TOMCAT_6_0_26\src 目錄下打開命令行窗口,執行下面命令(這裏的src目錄就是Tomcat源碼的目錄,下面是圖)
ant download
TOMCAT_6_0_26這個版本目前下載正常,較老版本一些下載連接可能會失效,須要在 build.properties文件中改連接。
下載了以下文件:
下載時,有可能nsis-2.46這個包沒下載成功,須要再執行一遍ant download命令。
下載完後直接執行 ant 命令就開始編譯了
編譯過程當中可能會提示:「沒有提示符JDT」相似的錯誤信息,緣由是下載的ecj-3.7.jar文件不能正常使用形成的!
解決辦法:
到下面的地址下載相關的ecj-3.7.2.jar
下載後更名爲ecj-3.7.jar替換下載的文件便可!
若是編譯成功會提示下面信息:
編譯完成後會產生一個output目錄,到這個目錄(F:\source\javaEE\Web\Tomcat\output\build)下看看,怎麼樣?咱們見到了熟悉的Tomcat目錄結構,以下圖:
3、將Tomcat源碼導入MyEclipse
打開MyEclipse,新建一個Java項目,而後點擊「Next」按鈕,在「Use default location」中填入D:\Workspace\JEE\workspace\TOMCAT_6_0_26\src
Project name: TOMCAT_6_0_26
而後一路next
接着咱們會看到MyEclipse拒絕編譯該項目,不要着急,這是因爲Eclipse找不到該項目指定的庫文件。右擊該項目彈出菜單選擇 "Build Path" -> "Configure Build Path..." -> "Libraries"
Remove下面兩項:
ANT_HOME/lib/ant.jar
TOMCAT_LIBS_BASE/...
若是這兩項沒有則忽略刪除。
接着添加以下依賴(Add External JARs...):
(也能夠參考:http://tomcat.apache.org/tomcat-6.0-doc/building.html#Building_with_Eclipse)
(1) ant.jar (在你電腦ant安裝目錄下lib目錄下能夠找到)
(2)wsdl4j.jar
(2) junit4.7 (這兩個在網上很容易找到)
5.在MyEclipse中運行Tomcat
找到org.apache.catalina.startup.Bootstrap
右鍵 Run as -> Run Configurations...
在Program參數窗口和VM參數窗口分別填入
start
和
-Dcatalina.home="D:\Workspace\JEE\workspace\TOMCAT_6_0_26\src\output\build"
Debug同理,不解釋,看圖:
從org.apache.jasper.compiler.Compiler類的generateJava()方法開始Debug更好,debug啓動Tomcat,而後瀏覽器輸入地址並回車,就會看到以下Debug視圖:
注意:generateJava方法是將jsp編譯成java class,這個行爲只有第一次請求時纔會調用,將你再次發送請求時你將看不到這個Debug視圖了,解決辦法是到Tomcat的 build\work\Catalina\目錄刪除對應jsp的類文件
當啓動程序是,可能會出現錯誤提示:
直接單擊「Proceed」按鈕。
在瀏覽器中輸入http://localhost:8080/examples
單擊Servlets examples後出現:
接下來,帶個好心情,讀源碼吧,祝快樂