天天看點

編譯Tomcat7.0源碼1 下載下傳JDK62 安裝Apache Ant 1.8.1或者更高版本3 下載下傳tomcat7源碼包4 編譯Tomcat源碼5 Myeclipse調試源碼

        編譯Tomcat 7源碼,使用Myeclipse開發環境調試tomcat源碼。

        編譯環境:

        作業系統:Win 7 旗艦版

        JDK:jdk 6

        Tomcat:apache-tomcat-7.0.53

        Myeclipse:myeclipse 10

        Apache Ant:Ant 1.9.3

1 下載下傳JDK6

        編譯Apache Tomcat源碼需要JDK 6版本,是以系統首先需要安裝JDK 6, JDK 6下載下傳位址:http://www.oracle.com/technetwork/java/javase/downloads/index.html

        注意:安裝完JDK 6之後,設定系統的環境變量JAVA_HOME 為JDK的安裝目錄。比如:C:\Program Files\Java\jdk1.6.0_12

編譯Tomcat7.0源碼1 下載下傳JDK62 安裝Apache Ant 1.8.1或者更高版本3 下載下傳tomcat7源碼包4 編譯Tomcat源碼5 Myeclipse調試源碼

2 安裝Apache Ant 1.8.1或者更高版本

        下載下傳ant的位址:http://ant.apache.org/bindownload.cgi

        以apache-ant-1.9.3-bin.zip為例,解壓壓縮包到一個友善的目錄,目錄的名稱為apache-ant-1.9.3,解壓之後如下圖:

編譯Tomcat7.0源碼1 下載下傳JDK62 安裝Apache Ant 1.8.1或者更高版本3 下載下傳tomcat7源碼包4 編譯Tomcat源碼5 Myeclipse調試源碼

        注意:解壓完成之後,建立環境變量ANT_HOME,設定該變量的值為E:\software\apache-ant-1.9.3

編譯Tomcat7.0源碼1 下載下傳JDK62 安裝Apache Ant 1.8.1或者更高版本3 下載下傳tomcat7源碼包4 編譯Tomcat源碼5 Myeclipse調試源碼

        修改環境變量PATH,并設定為E:\software\apache-ant-1.9.3\bin,這樣編譯源碼的時候,系統才能找到ant的指令。

3 下載下傳tomcat7源碼包

        下載下傳位址:http://tomcat.apache.org/download-70.cgi

編譯Tomcat7.0源碼1 下載下傳JDK62 安裝Apache Ant 1.8.1或者更高版本3 下載下傳tomcat7源碼包4 編譯Tomcat源碼5 Myeclipse調試源碼

        下載下傳完成之後解壓,解壓到myeclipse的工作空間下。

編譯Tomcat7.0源碼1 下載下傳JDK62 安裝Apache Ant 1.8.1或者更高版本3 下載下傳tomcat7源碼包4 編譯Tomcat源碼5 Myeclipse調試源碼

        Workspaces10-apache-tomcat-7.0.53目錄為我的myeclipse的工作空間目錄。

4 編譯Tomcat源碼

        編譯tomcat源碼成為myeclipse的一個java工程,友善在myeclipse中進行代碼調試。

        在tomcat的源碼目錄下建立libs目錄,該目錄用于存放所有依賴包。

        在tomcat的源碼目錄下修改配置檔案build.properties.default的檔案名稱為build.properties,打開build.properties,修改配置項base.path的值為E:/Workspaces10-apache-tomcat-7.0.53/apache-tomcat-7.0.53-src/libs。

        在cmd指令行中使用如下指令進入到tomcat源碼目錄,

cd E:\Workspaces10-apache-tomcat-7.0.53\apache-tomcat-7.0.53-src
           

        執行以下指令,會自動下載下傳依賴的jar包,并存放在libs目錄中,同時編譯tomcat源碼,并複制res/ide-support/eclipse目錄下myeclipse工程需要的檔案到源碼根目錄下。

ant ide-eclipse
           

        注意:使用該指令時,需要連接配接網際網路,ant會下載下傳依賴的jar封包件。

        編譯完成之後,終端會給出如下的提示資訊,說明編譯成功。

BUILD SUCCESSFUL
Total time: 26 seconds
           

        一個可用的tomcat被編譯到根目錄下的/output/build目錄下,此時就可以使用一般的腳本來啟動和停止tomcat。

5 Myeclipse調試源碼

        開啟myeclipse 10并讓E:\Workspaces10-apache-tomcat-7.0.53目錄作為其工作空間。

        打開myeclipse的Preferences對話框,選擇Java->Build Path->Classpath Variables,添加兩個新的Classpath Variables,TOMCAT_LIBS_BASE和ANT_HOME。

        TOMCAT_LIBS_BASE的值為libs目錄所在的路徑,和在build.properties檔案中的base.path配置項相同,E:/Workspaces10-apache-tomcat-7.0.53/apache-tomcat-7.0.53-src/libs。

        ANT_HOME設定為ant的根目錄,即E:/software/apache-ant-1.9.3

編譯Tomcat7.0源碼1 下載下傳JDK62 安裝Apache Ant 1.8.1或者更高版本3 下載下傳tomcat7源碼包4 編譯Tomcat源碼5 Myeclipse調試源碼

        使用File->Import并選擇Existing Projects into Workspace,在彈出對話框中選擇tomcat源碼根目錄,完成導入tomcat工程到myeclipse中。

        源碼目錄下的res/ide-support/eclipse目錄中,提供了兩個檔案start-tomcat.launch、stop-tomcat.launch,在myeclipse中可以用于啟動和停止tomcat,比如拷貝一份start-tomcat.launch至工程的根目錄下,

編譯Tomcat7.0源碼1 下載下傳JDK62 安裝Apache Ant 1.8.1或者更高版本3 下載下傳tomcat7源碼包4 編譯Tomcat源碼5 Myeclipse調試源碼

        修改檔案中的tomcat-7.0.x為apache-tomcat-7.0.53-src,

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<launchConfiguration type="org.eclipse.jdt.launching.localJavaApplication">
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
<listEntry value="/apache-tomcat-7.0.53-src/java/org/apache/catalina/startup/Bootstrap.java"/>
</listAttribute>
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
<listEntry value="1"/>
</listAttribute>
<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.apache.catalina.startup.Bootstrap"/>
<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="start"/>
<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="apache-tomcat-7.0.53-src"/>
<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Dcatalina.home=${project_loc:/apache-tomcat-7.0.53-src/java/org/apache/catalina/startup/Bootstrap.java}/output/build"/>
</launchConfiguration>
           

        選中檔案運作,

編譯Tomcat7.0源碼1 下載下傳JDK62 安裝Apache Ant 1.8.1或者更高版本3 下載下傳tomcat7源碼包4 編譯Tomcat源碼5 Myeclipse調試源碼

        也可以使用tomcat的主類org.apache.catalina.startup.Bootstrap啟動tomcat,

官網文檔:

http://tomcat.apache.org/tomcat-7.0-doc/building.html

繼續閱讀