IntelliJ IDEA下載安裝 + Tomcat下載安裝 + Eclipse的Web項目導入
Tomcat 下載與安裝
https://blog.csdn.net/weixin_42562514/article/details/87903951
Tomcat 下載與安裝
https://www.bilibili.com/video/av74401737?p=4
Eclipse項目導入
https://blog.csdn.net/weixin_44216144/article/details/98219452
特別注意下面這點,需要修改爲新導入的項目的地址WebContent,默認的地址是webapp,這裏是有差異的
遇到的問題總結:
1、導入後發現
import net.sf.json.JSONObject;無法識別,代碼中調用失敗,發現是jar包放錯了位置,把json.jar包從/WebContent/WEB-INF/lib中粘貼到 項目/lib目錄下才可以識別
2、應用向服務器請求數據總失敗,但是tomcat配置是好的,在瀏覽器中http://localhost:8080/是可以訪問的,下面1是打開tomcat的配置,4是應用的retrofit請求代碼,
打開配置可以看到,Application Context直接是/ 所以是根目錄訪問,沒有項目名,而應用訪問的時候是有用戶名的,所以此處應該是/TakeoutService
3、昨天使用androidstudio開發應用,Intellij Idea+tomcat搭好服務器後進行聯調無問題可以訪問到數據,今天把項目全部打開,鏈接的時候報錯:
03-03 13:22:53.580 4843-4843/com.example.zztakeout E/Takeout: HomeFragmentPresenter getHomeInfo onFailure
03-03 13:22:53.580 4843-4843/com.example.zztakeout E/Takeout: HomeFragmentPresenter retrofit2.ExecutorCallAdapterFactory$ExecutorCallbackCall@2324a52b
03-03 13:22:53.580 4843-4843/com.example.zztakeout E/Takeout: HomeFragmentPresenter java.net.SocketTimeoutException: failed to connect to /10.1.0.56 (port 8080) after 10000ms
代碼全部沒有變化,咋連不上呢?
網上指導是防火牆的問題,但防火牆關了也沒用,從瀏覽器打開網頁 http://localhost:8080/TakeoutService/ 發現是可以訪問到數據的,說明服務器啓動時ok的,對比代碼發現問題:
代碼中url地址是寫死的。家用電腦只有連接網絡纔會有IP地址,但IP地址大都是隨機動態分配的,除非用戶通過主機自己設定固定IP,昨天關機了,所以今天通過查詢ipconfig獲取到新地址替換就好了,公司調試時因爲使用局域網,ip地址固定,所以可以寫死。