[tomcat7源碼學習]tomcat7 Building with Eclipse

##下載tomcat7 源碼## 1.進入github:github tomcat70html

2.直接fork一個,而後在本地找一個目錄,運行java

git clone https://github.com/remind/tomcat70

##準備build## 1.在clone完畢後,就會直接看到一個build.xml,很明顯是要用ant來構建git

2.打開build.xml,裏面太多了~~,默認的是deploy,我運行了一下,發現沒太多變化,由於我是想要在eclipse裏面跑起來,因此我首先想的是看裏面有沒有與eclipse相關的,直接搜索了一下"eclipse",果真出現了一個 ![在此輸入圖片描述][1]github

這裏我原本是想直接複製代碼的,但這個"target"這一段MarkDown不顯示~~~apache

3.爲了保險起見,先肯定這東西是否是我要的,直接google,而後就出現了 ![][2]tomcat

點擊連接進去[http://tomcat.apache.org/tomcat-7.0-doc/building.html][3],全文搜索"eclipse",就看到了Building with Eclipse,原來官網已經有文檔說明了。eclipse

4.大概預覽了一下全文(因爲英語不怎麼的)~~,瞭解到運行腳本以後,還須要在eclipse中配置變量。ide

##building##ui

1.執行ant腳本google

ant ide-eclipse

這裏說一下,因爲我以前在搭建中發現用到了一些jdk7 nio方面的一些東西,因此我用jdk7編譯過,而我環境變量又是配置的jdk6,因此這裏開始報了一下class version的錯誤,我是直接git先回退了的,就是在執行上面腳本前先執行了一下

git reset --hard

這裏ant執行成功以後,就能夠看到文件夾下面已經出現了.classpath和.settings,就知道能夠直接導入了

2.打開eclipse,導入工程,而後配置變量,這裏首先是要配置的TOMCAT_LIBS_BASE,按官網說法是base.path,我開始覺得就是tomcat7工程所在目錄,結果配置進去發現不正確,沒有那幾個jar,我就又看了一下eclipse中的Libraries,我就想到我在下載依賴的過程當中還有一個文件夾F:\usr\share\java,這應該是自動生成的,這下面有不少jar,我想這就應該是tomcat要依賴的東西了,我就直接在工程目錄下面新建了一個lib文件夾,而後把F:\usr\share\java裏面的東西都複製到lib下面 ![][4]

而後修改eclipse中的變量,並寫上ant的變量,它這裏好像是要求要1.8以上的,我恰好就是~~ 而後整個Libraries就是:![Libraries][5]

3.運行 直接右鍵run as Java Application,會彈出一個選擇框 ![在此輸入圖片描述][6]

這個就直接選擇Bootstrap了,而後會再彈出一個選擇框 ![在此輸入圖片描述][7]

從這裏就能夠看出ant已經爲咱們配置了run的參數,因此直接選擇start-tomcat,成功運行~~

##總結## 1.運行時的參數設置,就是咱們在run時彈出的那個,進入run configurations中能夠看到有兩個,一個是start,一個是stop,他們的vm參數也同樣,都是-Dcatalina.home=${project_loc:/tomcat-7.0.x/java/org/apache/catalina/startup/Bootstrap.java}/output/build,tomcat6的運行時的這些參數,我仍是直接根據startup.bat裏面去一步一步跟蹤出來,而後配置到這裏運行的,那時候好像不能直接用ant生成eclipse工程~~

2.成功運行以後個人整個工程目錄結構就是: ![工程目錄結構][8]

第一次用Markdown,發現這玩意兒真的很不錯寫起來方便,看起來也舒服回頭也給sublime text2安裝上 [1]: http://static.oschina.net/uploads/space/2013/1125/225735_BxYO_567671.jpg [2]: http://static.oschina.net/uploads/space/2013/1125/222905_hWOQ_567671.jpg [3]: http://tomcat.apache.org/tomcat-7.0-doc/building.html [4]: http://static.oschina.net/uploads/space/2013/1125/224310_M1wC_567671.jpg [5]: http://static.oschina.net/uploads/space/2013/1125/224433_0mNr_567671.jpg [6]: http://static.oschina.net/uploads/space/2013/1125/224616_BUJi_567671.jpg [7]: http://static.oschina.net/uploads/space/2013/1125/224706_tqUU_567671.jpg [8]: http://static.oschina.net/uploads/space/2013/1125/225154_tEeL_567671.jpg

相關文章
相關標籤/搜索