go 1.13編譯遇到xxx/go.mod malformed record data 問題


背景:

公司在做自己的發布平台,需要自動化編譯go 工程,大部分開發使用的都是go 1.12 版本

由於go mod的機制,有很多包需要代理才能進行下載,而自動化編譯頻繁的進行代理切換就很麻煩。

所以線上自動編譯采用go 1.13 編譯

go 1.13 編譯的特點:https://zhuanlan.zhihu.com/p/74542832

 

過程:

在編譯的時候就會偶爾莫名出現 xxx/go.mod malformed record data的問題

 

自我理解

因為出現的問題的包是公司內部的一個SDK,不存在FQ之類的代理問題

我理解是這樣的,go 1.13 可以設置多個代理,在某個下載失敗時,他會換代理下載

代理設置:https://goproxy.io,direct  就是連個代理直接下載,或者使用goproxy.io下載

當使用直接下載時,會通過默認代理“sum.golang.org”,這個代理需要FQ驗證,所以會失敗,切換goproxy.io 是報的這個錯誤,Google 上查可能是跟這個代理bug 有關

 

解決方案:

關掉go 1.13的默認代理

go env -w GOSUMDB=off

后來我考慮還可以設置GOPRIVATE 跳過私有庫,原理可能都是一樣的。想辦法關閉代理。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM