Maven配置build failure的解決方案
技術標籤:筆記
前段時間,領導找到一臺舊機準備當做伺服器來做試驗。我奉命安裝配置了Java,Eclipse,Maven,Mysql。
按照教程下載,解壓,安裝,設定環境變數,在Eclipse配置Maven之後,自以為差不多了,畢竟java -version,mvn -v之類一切正常,結果領導一個mvn help:system給我打趴下了。
鮮紅的BUILD FAILURE一點都不紅紅火火。
於是本小白一邊搞著視訊,一邊開始了對問題的探索。
————
這是很乾淨的一臺機器。
系統:win7 x64
網路:公司內網【←問題根源就是它】
按照顯示的ERROR,度娘給了我一千種相似的解決辦法:
2.修改中的,把映象改成阿里雲的。這一步的答案裡有很多種映象,意思都是把國外的改成國內。maven.aliyun.com的,還有repo1.maven.org的等等。
然而我最初的檔案裡就用的阿里雲的,因此修改後仍然無效。
那麼問題來了,到底是什麼原因?我又核對了環境變數,改了倉庫位置,甚至Eclipse裡也對Maven的配置再次確認,一切都如此正常,奈何依舊failure。
研究之餘中有個小插曲:我在工作站肝視訊,旁邊的電腦突然連不上網。和同事搗鼓半天,我看IP地址不是內網的,結合系統診斷推測是路由器的毛病。回頭給管理打電話,發現是網線被碾了+路由器上的埠被上頭鎖定(然而由於之前連不上,插在了其他埠)的緣故。
肝完視訊回來後的我決定好好琢磨一下。
很顯然這麼多warning error我是看不懂的……先理解下過程吧,看看哪個環節會出問題。
help:system是讓Maven從映象的中央倉庫裡下載jar包等到預設/指定路徑本地倉庫的過程。(http傳送get請求?)
相同錯因,答案裡的共同點都是網路部分,無法訪問國外網路映象導致的,也就是還沒到下載部分就失敗。
突然想起來在研究連不上網的電腦時,感嘆了一下win10可以直接在小齒輪裡設定代理,而不一定要在瀏覽器Internet設定的局域網裡設定,也不知道是不是整機都遵從。
……代理?
對哦,我的win7只設置了瀏覽器代理,但是Maven的下載需要訪問外網,它又不通過瀏覽器——
1.開啟settings.xml。
2.找到中的,
把預設的註釋標記刪除,新增代理資訊。
(因為我們內網不涉及使用者登陸,不涉及訪問內網伺服器,這裡給註釋掉。*是代理地址。)
<proxies>
<proxy>
<id>optional</id>
<active>true</active>
<protocol>http</protocol>
<!--<username></username>
<password></password>-->
<host>10.*.*.*</host>
<port>8080</port>
<!--<nonProxyHosts>local.net|some.host.com</nonProxyHosts>-->
</proxy>
</proxies>
3.再次嘗試。
顫抖著手點開winR,cmd,mvn system:help一氣呵成!
————
反思:
打工人打工魂,謹記自己是內網人。
每一個步驟是幹什麼的,瞭解清楚就有思路了。
2020.12.11