成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

從源代碼構建Tomcat的方式

開發 開發工具
對于開源軟件,一些用戶喜歡方便的開箱即用,還有一部分用戶則喜歡從源代碼入手,設置環境,重新構建(build)出來一個可用的版本,享受這種折騰的過程。

對于開源軟件,一些用戶喜歡方便的開箱即用,還有一部分用戶則喜歡從源代碼入手,設置環境,重新構建(build)出來一個可用的版本,享受這種折騰的過程。

做為開源項目里發展成熟、用戶眾多的一款開源軟件,Apache Tomcat有許多優良的設計與架構,所以更少不了這種「弄臟雙手,從頭折騰」的使用者。

其實說實話,如果單純為了分析了研究源代碼,可以下載某一版本的Tomcat以及與之對應的源代碼,即可搭建調試環境。這個之前的文章里寫過一些(怎樣調試Tomcat源碼)。

但是自己用源代碼構建這種方式,相對來說,你可以隨意在源代碼中修改嘗試,然后打包,此時再進行Remote debug方式的調試時,代碼行也可以完整的對應上,不會造成困惑,基本上和在IDE里搭好一個可以調試的Project一樣。

本次我們了解從源代碼入手「弄臟雙手,從頭折騰」構建一個Tomcat的過程。

簡明過程:

  • 安裝JDK
  • 安裝Apache Ant
  • 下載Apache Tomcat源代碼
  • 編輯Ant使用的構建文件(一般默認的是build.properites,會包含在Tomcat源代碼中)
  • 下載構建需要依賴的庫(其他一些lib)
  • 構建Tomcat

下面詳細來看上述這些過程。

安裝JDK

這個的安裝過程自然不必多說,每個Java開發者都在學語言的***天了解過了。唯一注意的是,不同的Tomcat版本,需要對應不同的JDK,所以如果JDK版本太低可能導致新版本的Tomcat編譯不成功。

安裝Apache Ant

Ant是做什么的呢?編譯安裝過Linux/Unix軟件的用戶都知道make這個工具。Ant則是Java應用的構建工具。這里注意Ant的版本也不要不老。安裝過程也和JDK/Maven這些Java工具類似,解壓之后配置ANT_HOME,然后加到Path中使其可執行即可。安裝完成命令行執行ant –version確認安裝是否正確。

下載Tomcat源代碼

可以到github上下載Tomcat源代碼。

也可以在官方的SVN repository去下載,直接選擇具體的版本。

在官網下載發行包的位置,可以直接下載當前***release的Tomcat和源代碼,已歸檔的可以在歸檔文件中下載發行版和源代碼。

編輯構建配置文件

在Tomcat源代碼中,默認包含了兩個Ant要使用到的文件:

  1. build.properties.default  
  2. build.xml 

拷貝build.properties.default文件一份,重命令為build.properties,再修改一下其中的base.path,這里設置一個絕對路徑,用來存放構建過程中下載下來的tomcat依賴的第三方庫。

然后再修改build.xml,將其中以下內容注釋掉

  1. <antcalltarget="downloadzip"
  2.      <param name="sourcefile" value="${nsis.loc}"/> 
  3.      <param name="destfile" value="${nsis.exe}"/> 
  4.      <param name="destdir"value="${nsis.home}/.."/> 
  5.    </antcall> 

注釋掉的內容是因為其會在下載依賴時去獲取一個nsis.exe的文件,用來生成tomcat在windows平臺的安裝程序的。我們這里不需要,所以可以在ant的構建文件build.xml里把它去掉。否則因為證書的問題,容易出現下面這個異常

  1. javax.net.ssl.SSLHandshakeException: 
  2. sun.security.validator.ValidatorException:PKIX path building failed: sun.securi 
  3. ty.provider.certpath.SunCertPathBuilderException:unable to find valid certifica 
  4. tion path to requested target 

當然解決這個異常的問題網上也有解決方案,但相比注釋要麻煩一些。

然后在源代碼的根目錄執行命令ant,靜待構建完成。默認會在源代碼的output目錄下生成一個build目錄,這個就是和我們解壓zip獲得的Tomcat一個樣。

此外,ant命令執行中間如果出現ConnectionTimeout這種異常,可以重復試幾次。

【本文為51CTO專欄作者“侯樹成”的原創稿件,轉載請通過作者微信公眾號『Tomcat那些事兒』獲取授權】

戳這里,看該作者更多好文

 

責任編輯:武曉燕 來源: 51CTO專欄
相關推薦

2021-12-07 12:00:12

UbuntuLinuxQt 6.2.2

2010-06-03 10:15:35

2009-11-30 09:16:44

VS2003源代碼

2020-11-09 11:31:03

鴻蒙App

2022-11-28 11:15:20

Tomcat回顯方式

2017-10-30 22:13:37

Tomcatshell調試

2022-12-29 12:33:20

2023-09-26 08:29:27

2009-04-03 08:28:39

2012-07-04 10:18:10

Tomcat調試代碼分析

2016-10-11 16:28:11

源代碼

2009-06-12 19:03:41

Hadoop源代碼Yahoo

2010-04-29 12:57:33

Unix源代碼

2010-08-03 10:16:52

Flex源代碼

2025-04-30 08:31:40

2017-01-13 15:25:33

2017-12-05 14:24:31

應用綁定域名

2019-01-13 15:16:35

2019-08-12 15:44:41

DockerTomcat

2020-11-13 13:05:27

Java開發代碼
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品亚洲一区二区三区在线 | av在线播放网站 | 久久6视频 | 国产精品毛片一区二区在线看 | 蜜臀久久99精品久久久久野外 | 91九色视频 | 99只有精品| 国产精品视频网 | 国产在线小视频 | 久久久久国产一区二区三区四区 | 一级毛片免费 | 久久与欧美 | 亚洲欧美激情精品一区二区 | 国产精品美女久久久久久免费 | 网站一区二区三区 | 成人毛片视频在线播放 | 久久久久国产一区二区三区四区 | 秋霞电影一区二区三区 | 黄色在线免费播放 | 天天操夜夜爽 | 操射视频 | 午夜在线视频 | jdav视频在线观看免费 | 欧美综合一区 | 成人免费网视频 | 精品一区二区三区视频在线观看 | 国产中文字幕在线 | 在线成人免费视频 | 中文字幕在线免费观看 | 色网站在线免费观看 | 亚洲在线一区 | 成人av一区 | 色久五月 | 99精品在线观看 | 日韩精品中文字幕在线 | 99国产精品久久久久老师 | 国产精品中文字幕在线观看 | 成人国产精品久久 | 日日淫| 精品乱码一区二区 | 99精品国产一区二区三区 |