構建Apache Tomcat 6.0 Servlet/JSP 容器
這個子項目包含了Tomcat 6.0的源代碼,一個實現了Java Community Process http://www.jcp.org/ 的Servlet2.5和JSP2.1標準的容器。
注意:如果你只需要運行Tomcat,沒有必要去構建它,你可以非常方便的下載一個二進制發佈包。它是跨平臺的。閱讀RUNNING.txt文件,它介紹了怎樣去運行它。
請按以下步驟來從源代碼構建一個Tomcat的二進制發佈版本:
下載並安裝JDK
- 如果JDK已經安裝了,跳到步驟2
- 從下面的地址下載一個Java開發套件(JDK),使用Java SE 5版本。http://www.oracle.com/technetwork/java/javase/downloads/index.html
高於Java SE 5的版本注意:
由於另外的文檔表明,Apache Tomcat的其中一個組件包括一個私有的Apache Commons DBCP類庫的副本,這個庫的源代碼已已下載,由構建腳本(renaming the packages)處理並編譯。
由於各版本Java SE規範對JDBC接口實現的不同,這個庫不得不指向特定版本的Java和使用這個版本的JDK的實現規範來編譯。
更多此庫的可用版本和所需要條件的詳細信息請查看Apache Commons DBCP項目的web站點
http://commons.apache.org/dbcp/
可以使用更新版本的JDK來構建Tomcat 6.0,但是tomcat-dbcp.jar組件的構建將會跳過並會打印一些警告。 - 根據包含在發佈包中的介紹安裝JDK。
- 設置一個名爲JAVA_HOME的環境變量,指向你安裝JDK發佈包的目錄。
在你的電腦上安裝Apache Ant 1.8.x
- 如果電腦上已安裝Apache Ant 1.8.x,跳到步驟3
- 下載Apache Ant 1.8.x的二進制發佈包,地址:
http://ant.apache.org/bindownload.cgi - 解壓二進制發佈包到一個合適的位置,讓Ant發佈程序可以擁有自己的目錄,(約定名爲”apache-ant-[version]”)。Ant發佈包全目錄路徑名在本文檔以下使用符號”${ant.home}”替代。
- 創建一個ANT_HOME的環境變量指向目錄${ant.home}
- 修改PATH環境變量包含${ant.home}/bin目錄的路徑到列表中。這會使用ant腳本命令可用,在構建過程中會起到它的作用。
構建Tomcat 6.0
檢出或以其它方式獲得Tomcat 6.0的源代碼
- Tomcat 6.0SVN倉庫地址:http://svn.apache.org/repos/asf/tomcat/tc6.0.x/trunk/
- 下載源代碼包
http://tomcat.apache.org/download-60.cgi - 使用SVN檢出源代碼,選擇一個已發佈的tag版本或者主線版本爲當前的開發代碼,或者解壓一個源代碼包,源代碼存放目錄以${tomcat.source}作爲引用名。
構建
切換到源代碼目錄,執行以下命令:
cd ${tomcat.source} ant download ant
警告:運行”ant download”命令會下載構建Tomcat需要的庫文件到/usr/share/java目錄下。在典型的Linux或者MacOS系統上,即使你這樣做,寫到這個目錄對你來說可能不合適。在Windows上這個目錄通常是和c:\usr\share\java目錄一致。除非你使用的是Cygwin。閱讀下面的部分學習如何自定義二進這制文件的下載目錄。
- 注意:通過代理訪問Internet的用戶必須使用一個屬性文件指向Ant代理配置。見下文。
- 可以通過創建一個${tomcat.source}/build.properties文件來控制構建,添加如下內容到文件中:
# ----- 代理設置 ----- # 如何使用代理服務請解除註釋 #proxy.host=proxy.domain #proxy.port=8080 #proxy.use=on # ----- 依賴包的默認基準目錄 ----- # 替換需要下載的依賴二進制包的下載目錄 base.path=/home/me/some-place-to-download-to
更新源代碼
建議你使用SVN客戶端定期更新Tomcat 6的源代碼重新構建
你可以使用以下命令爲修改的源代碼做一個簡單的構建cd ${tomcat.source} ant
構建servlet 和 jsp API文檔
cd ${tomcat.source} ant -f dist.xml dist-javadoc
額外的構建(commons-logging, webservices等)
cd ${tomcat.source} ant -f extras.xml
構建一個發佈版
一個完整的發佈包包括Windows安裝器,需要一個可用的Windows環境來創建它。如果不在Windows環境下構建它,構建腳本採用Wine也是可用的。如果不是這個場景,可以設置skip.installer
屬性來跳過安裝器的創建。cd ${tomcat.source} ant -f dist.xml release
- 其它
本文翻譯自Tomcat源代碼目錄中的BUILDING.txt文件
注意:尊重勞動成果,轉載請註明出處,謝謝!