中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

tomcat中如何尋找main函數(shù)

tomcat中如何尋找main函數(shù),相信很多沒有經(jīng)驗(yàn)的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。

創(chuàng)新互聯(lián)建站專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站制作、成都網(wǎng)站設(shè)計、都蘭網(wǎng)絡(luò)推廣、微信小程序開發(fā)、都蘭網(wǎng)絡(luò)營銷、都蘭企業(yè)策劃、都蘭品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)建站為所有大學(xué)生創(chuàng)業(yè)者提供都蘭建站搭建服務(wù),24小時服務(wù)熱線:18982081108,官方網(wǎng)址:www.rwnh.cn

每一個做java web的同學(xué),從入行第一天起就會聽到tomcat的名字, 直到現(xiàn)在工作數(shù)年之后,依舊是天天離不開tomcat , 只不過是用的形式發(fā)生了變化,記得最開始用tomcat時,還要去server.xml里面改一個端口號,現(xiàn)在代碼中基不上看不到tomcat的影子了,但不可否認(rèn),我們的web程序依舊是用tomcat運(yùn)行起來的。

記得有一次面試時,面試官問:tomcat有main函數(shù)嗎?當(dāng)時我就想著,運(yùn)行tomcat都是配置tomcat的目錄,然后點(diǎn)個運(yùn)行就不用管了,哪有平時寫java程序那樣,還有有個main函數(shù),右鍵運(yùn)行/調(diào)試之類的。如下圖是在idea中配置tomcat.然后就答了一個沒有main函數(shù),然后,,就回家等通知了,,

tomcat中如何尋找main函數(shù)

啟動tomcat

通過上面回家等通知我們可以推斷出, tomcat是有main函數(shù)的,那main函數(shù)在哪里呢?我們從啟動tomcat開始找(以下分析基于9.0.12)。啟動時是找bin目錄下的startup.bat/startup.sh,圈重點(diǎn)了??!下面這三個圈圈是重點(diǎn)

tomcat中如何尋找main函數(shù)

先點(diǎn)開startup.sh,感覺他好像并沒有做什么事,只是執(zhí)行了catalina.sh

tomcat中如何尋找main函數(shù)

那我們就順著走進(jìn)catalina.sh里面看看,這一看不得了,600多行腳本,從何看起,,當(dāng)然,本文也不會從頭一行一行的去講這些,今天我們只是去尋找main函數(shù),那我們在這里面就要去尋找java命令。

在這個腳本中,我們會看到大量的這樣的腳本:

# For Cygwin, switch paths to Windows format before running java
if $cygwin; then
 JAVA_HOME=`cygpath --absolute --windows "$JAVA_HOME"`
 JRE_HOME=`cygpath --absolute --windows "$JRE_HOME"`
 CATALINA_HOME=`cygpath --absolute --windows "$CATALINA_HOME"`
 CATALINA_BASE=`cygpath --absolute --windows "$CATALINA_BASE"`
 CATALINA_TMPDIR=`cygpath --absolute --windows "$CATALINA_TMPDIR"`
 CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
 JAVA_ENDORSED_DIRS=`cygpath --path --windows "$JAVA_ENDORSED_DIRS"`
fi

if [ -z "$JSSE_OPTS" ] ; then
 JSSE_OPTS="-Djdk.tls.ephemeralDHKeySize=2048"
fi
JAVA_OPTS="$JAVA_OPTS $JSSE_OPTS"

從if then關(guān)鍵字不難猜出,這是根據(jù)系統(tǒng)情況,來給tomcat的運(yùn)行拼接不同的參數(shù)。我們跳過這些代碼繼續(xù)往下走,如下圖所示,與startup.sh 最后的start 命令相對應(yīng),然后開始我們熟悉的java程序啟動命令:nohup java -jar xxxxx.jar > log.log &.

tomcat中如何尋找main函數(shù)

在460行可以看到,啟動的是org.apache.catalina.startup.Bootstrap類。不出意外的話這里面應(yīng)該就有我們要找的Main函數(shù),我們在idea中找到這個類,沒錯!Main函數(shù)就在這里面!!

tomcat中如何尋找main函數(shù)

看完上述內(nèi)容,你們掌握tomcat中如何尋找main函數(shù)的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!

文章標(biāo)題:tomcat中如何尋找main函數(shù)
URL標(biāo)題:http://www.rwnh.cn/article18/pgedgp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站外貿(mào)網(wǎng)站建設(shè)、域名注冊、網(wǎng)站設(shè)計、網(wǎng)站制作、企業(yè)網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)
雷山县| 瓮安县| 高雄县| 永春县| 固镇县| 五峰| 东乡族自治县| 金华市| 土默特右旗| 石河子市| 米脂县| 兰坪| 赣榆县| 都昌县| 宁陕县| 依兰县| 嵩明县| 三都| 宜丰县| 上栗县| 阿拉善左旗| 儋州市| 阜新| 诏安县| 桐乡市| 寿光市| 定日县| 富源县| 霍邱县| 芮城县| 昭平县| 大足县| 铜川市| 绍兴市| 龙海市| 邹城市| 福建省| 台江县| 云龙县| 邯郸县| 周宁县|