编译Tomcat9源码及tomcat乱码问题解决
?
?因工作原因,需要從根本上優(yōu)化tomcat的配置,故準備從源碼入手,看看可以做哪些工作。
1. tomcat下載
tomcat最新的版本為9,下載源碼的方式有3種:
1/ 官方網(wǎng)站?https://tomcat.apache.org/download-90.cgi,下載如下zip或者tar.gz解壓,最新的release版本為9.0.22
2/github
gitclone https://github.com/apache/tomcat.git 或者下載壓縮包,gitclone得到tomcat目錄
? ? ?壓縮包默認得到tomcat-master目錄,如下圖所示
3/svn
https://svn.apache.org/repos/asf/tomcat/trunk/
2. tomcat的編譯
準備工作
C:\Users\86137>java -version java version "1.8.0_91" Java(TM) SE Runtime Environment (build 1.8.0_91-b15) Java HotSpot(TM) 64-Bit Server VM (build 25.91-b15, mixed mode)C:\Users\86137>ant -version Apache Ant(TM) version 1.9.14 compiled on March 12 2019編譯命令
cd ${tomcat.source} ant或者eclipse支持
cd ${tomcat.source} ant ide-eclipse3.導入ide(eclipse為例)
準備工作
增加兩個classpath變量
? ?導入
File->Import->General->Existing Projects into Workspace->選擇Tomcat源碼的根目錄,單擊完成即可導入。
導入完成之后,項目自動完成編譯。
?4.啟動
? ?配置1?
配置2
?
?啟動成功
5. 可能出現(xiàn)的問題
? tomcat 顯示亂碼,-Dfile.encoding=UTF8 或者GBK 都不行,網(wǎng)上各種回答都不能根本解決問題。調(diào)試VersionLoggerListener進行發(fā)現(xiàn)
修改-Dfile.encoding=UTF8 或者GBK 都 能起效,但亂碼仍然不能解決。
進入StringManager sm變量發(fā)現(xiàn),local為zh_cn時,啟用的屬性文件本身的編碼就是亂碼,嘗試了不少解決辦法如修改eclipse的默認方式為utf-8 都不行,網(wǎng)上各種方式也試過。
均不好用。那我們就繞過去吧,將local設置為us不容易報錯。修改啟動參數(shù),如下所示。
?
?此時,啟動顯示如下:(全部英文,不再亂碼)
?
參考資料:
【1】https://www.cnblogs.com/davidwang456/articles/11068822.html
【2】http://tomcat.apache.org/tomcat-9.0-doc/building.html
轉(zhuǎn)載于:https://www.cnblogs.com/davidwang456/p/11224923.html
總結
以上是生活随笔為你收集整理的编译Tomcat9源码及tomcat乱码问题解决的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用flink Table Sql ap
- 下一篇: 如何在windows上玩转redis的最