我的環境:Win10,Eclipse 4.8.0 Photon,JDK 10.0.2
1.下載Tomcat源碼
我下載的是:apache-tomcat-9.0.12-src.zip
下載好后解壓到指定目錄,我的目錄是:
D:\Tomcat\apache-tomcat-9.0.12-src
2.下載並安裝Ant(因為Tomcat使用Ant構建)
ANT Libraries:
https://ant.apache.org/antlibs/proper.html
我解壓到:
D:\Ant\apache-ant-1.10.5
簡化教程(在此之前,默認你已安裝好Java環境):
- 配置ANT_HOME,如我的:ANT_HOME = D:\Ant\apache-ant-1.10.5
- 將 %ANT_HOME%\bin 加入環境變量 Path
- (可選)打開cmd,在 ANT_HOME 這個目錄下執行命令: ant -f fetch.xml -Ddest=system,以獲取部分功能所需的相關依賴包
3.編譯
- 在你解壓的Tomcat目錄(我的是:D:\Tomcat\apache-tomcat-9.0.12-src)中找到文件“build.properties.default”
- 把“build.properties.default”重命名為:“build.properties”
- 在文件“build.properties”中找到選項:base.path,默認值為:${user.home}/tomcat-build-libs,修改該值(可以把默認的內容注釋,另起一行編輯),改為你希望依賴包下載后存放的位置,比如我的改為:D:/Tomcat/tomcat-9.0.12-dependedlibs
- 打開cmd,在Tomcat解壓的目錄下,運行命令:ant download,若提示:BUILD FAILED,直接跳過這步(網上其他教程有這個步驟,但我的顯示是這樣的,繼續下一步)
- 繼續在該目錄下運行命令:ant,編譯要花一些時間,因為可能要下載一些依賴包,如果鏡像在國外,下載就會緩慢
- 注:如果期間卡住了,或者由於偶然的網絡原因導致編譯失敗,重新進行編譯,直到成功
4.將Tomcat源碼導入Eclipse
- 第3步編譯結束后,會在D:\Tomcat\apache-tomcat-9.0.12-src目錄下生成一個output目錄,用於存放編譯結果;
- 在Eclipse中新建Java Project,我命名為:Tomcat9,把Tomcat解壓目錄下的java、test兩個源碼目錄導入(導入模式為:File System)到Tomcat9中,
- 注意:分批導入;導入前,在Options選擇框中注意勾選“Create top-level folder”,否則不會生成層級目錄結構
- 把java和test兩個目錄標記為source folder,右鍵選擇文件夾->Build Path->Use as Source Folder,標記為source folder后兩個代碼目錄都出現了錯誤,這是因為缺少依賴包,請看第5步
5.導入依賴包
- ant.jar,在你安裝的ANT目錄:%ANT_HOME%/lib下,如我的在:D:\Ant\apache-ant-1.10.5\lib
- jaxrpc.jar,在Eclipse的plugin目錄下,如我的在:C:\Users\lichaoxi\.p2\pool\plugins\javax.xml.rpc_1.1.0.v201209140446\lib
- junit.jar,test包中需要,可以使用Eclipse自帶的
- wsdl4j-1.5.1.jar,去網上下載,我下載的是:wsdl4j-1.6.1.jar
- org.eclipse.jdt.core_3.3.1.v_780_R33x.jar,版本視情況而定,我下載是:org.eclipse.jdt.core-3.7.1
- 導入后test包可能還會有部分文件報錯,直接刪了就好
- 下載網址:http://www.java2s.com/Code/Jar/CatalogJar.htm
6.參考網址
