日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

idea启动多个tomcat失败

發布時間:2025/3/20 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 idea启动多个tomcat失败 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Intellij idea中,為在本地調試兩個系統之間的調用,配置兩個本地tomcat server,設置不同的端口號,如8081和8082,Deploy中加入兩個系統各自的Artifact xxx:war, Application context設置為“/“,即訪問地址分別為http://localhost:8081/?和?http://localhost:8082/?。

問題來了,分別單獨啟動兩個server時都能成功;但是同時啟動兩個系統時,兩個系統都會出現問題。其中較先啟動的server報錯為:StandardServer.await: Invalid command ” received,然后會有一個系統報出異常,提示找不到xml或者properties等。

尋求解決方法

報出的找不到xml或properties等異常,肯定是誤報,因為單獨啟動時是沒有問題的。

根據StandardServer.await: Invalid command ” received百度或者google,得到的結果基本是端口的問題。但是我已經配置了不同的端口號,除上述的http port外,我還查看了server.xml中的shut down port、ajp port等等,均不相同。大略可以排除端口號的問題。

請教同事,同事解釋Application context不能同為”/”,Intellij會將web發布到tomcat目錄下的ROOT中,兩者必然沖突。提供了兩種解決方案:

  • Application context區別開,如”/weba/”和”/webb/”
  • 將tomcat安裝目錄復制一份,用兩套tomcat部署
  • 我恍然同時,又覺得Eclipse完全可以實現啊,Intellij這都實現不了是不是有點low了。

    問題解決

    最終的最終,我發現了問題所在。在Deploy中加入的Artifact不應該是war,而應該選擇第二種war explored!

    搜索了war和war explored的區別。網上大都在討論兩者最大的區別是explored支持熱加載,方便本地修改調試。但是針對本文的問題,沒有找到直接解釋。

    自己淺析一下:war理所當然會打為war包,發布時候脫離了你本地項目目錄,發布到了Tomcat目錄\webapps\ROOT下;explored方式,是將web root指向了你的本地項目。因此war形式會產生沖突,而explored方式不會,且explored方式可以熱加載。

    轉載自:http://blog.csdn.net/unifirst/article/details/52153950

    但經驗證,兩個項目都設置成 war explored還是會報錯,于是只能一個設置成war 另一個設置成war explored。這樣就可以了,還有一種就是設置兩個項目的Application context不能同為”/” 。讓運行的資源分開放。

    本文轉自歡醉博客園博客,原文鏈接http://www.cnblogs.com/zhangs1986/p/7766827.html如需轉載請自行聯系原作者


    歡醉

    總結

    以上是生活随笔為你收集整理的idea启动多个tomcat失败的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。