Stories

Detail Return Return

優雅關閉maven-default-http-blocker? - Stories Detail

關鍵詞:maven 、 maven-default-http-blocker 、 mvn block

當maven升級到3.8.1之後,會遇到一個報錯Could not validate integrity of download from,其中包含maven-default-http-blocker關鍵詞,核心原因是maven 3.8.1之後認為HTTP不安全,禁用了HTTP的maven倉庫訪問,打開maven倉庫的conf/settings.xml文件,有以下內容

image.png

<mirror>
  <id>maven-default-http-blocker</id>
  <mirrorOf>external:http:*</mirrorOf>
  <name>Pseudo repository to mirror external repositories initially using HTTP.</name>
  <url>http://0.0.0.0/</url>
  <blocked>true</blocked>
</mirror>

嘗試在搜索引擎搜索解決方案,沒想到各個博客站點都是一羣水貨

👎水文一

修改maven安裝路徑下的conf/settings.xml文件,將上面的內容刪除

我問一個問題:用Mac和Linux的同學隨着操作系統升級了maven, 升級一次改一次嗎?

👎水文二

讓升級HTTPS
降低maven版本

如果能升級到HTTPS,當初一開始就不會搭建HTTP的私服?有什麼大病吧?降maven版本,就這廢話還能專門寫文章?

😊水文三

為每個源添加<blocked>false</blocked>標籤

<mirror>
  <id>xxx-repo</id>
  <mirrorOf>external:http:*</mirrorOf>
  <url>http://hostname:8081/repository/maven-public/</url>
  <blocked>false</blocked>
</mirror>

這個方案還可以,但是一般稍微好點的公司都是阿里、網易、華為、清華、騰訊、中央倉庫按照優先級排序使用的,還會有一些apache、Spring等企業內部的快照源,原則上不動已經寫好的配置

⭐👍🐮完美方案

參考自 Stack Overflow社區

在當前用户家目錄下個性化settings.xml,變更~/.m2/settings.xml

<mirror>
    <id>maven-default-http-blocker</id>
    <mirrorOf>dummy</mirrorOf>
    <name>Dummy mirror to override default blocking mirror that blocks http</name>
    <url>http://0.0.0.0/</url>
 </mirror>

將上述內容放在<mirrors></mirrors>中的第一個,其他的配置不動

user avatar mannayang Avatar u_16297326 Avatar u_17513518 Avatar xiaoniuhululu Avatar xuxueli Avatar tech Avatar jiangyi Avatar chuanghongdengdeqingwa_eoxet2 Avatar lvlaotou Avatar aipaobudezuoyeben Avatar wuliaodechaye Avatar flydean Avatar
Favorites 42 users favorite the story!
Favorites

Add a new Comments

Some HTML is okay.