Go භාෂාවෙන් වැඩ කරන බොහෝ සංවර්ධකයන් “go mod tidy” ක්රියාත්මක කරන විට “GOPROXY list is not the empty string, but contains no entries” යන ලාළු පණිවිඩයක් බලන්නට ලැබේ.
මෙම දෝෂය බොහෝ විට පේනුවට බය කරනවා වුවද, ඇත්තේ GOPROXY පරිසර විචල්යය වැරදි ලෙස සකසා ඇති නිසාය. Go මොඩියුලයන් බාගත කිරීමේදී භාවිතා කරන proxy ලැයිස්තුව හිස් නොවූවත්, එහි වලංගු URL එකක් නොමැති විට මෙම පණිවිඩය පෙනේ.
සාමාන්ය හේතු
- අවලංගු කොමාවක් හෝ පයිප්පයක් (GOPROXY=, හෝ GOPROXY=|)
- GOPROXY=off ලෙස සකසා proxy පූර්ණයෙන් අක්රිය කර ඇති අවස්ථාව
- Shell එකේ හිස් හෝ ඉඩක් පිරුණු අගයක් (GOPROXY= )
- කාර්යාලීය proxy URL එක අහෝසි වී ඇති අවස්ථාව
- Windows Git Bash (MINGW64) හි Windows පරිසර විචල්යයන් Go සෙට් කර ඇති env ගොනුවට මතුපිටින් පසුබැසීම
පියවරෙන් පියවර විසඳුම
- Shell එකේ වත්මන් GOPROXY අගය පරීක්ෂා කරන්න:
echo "GOPROXY=[$GOPROXY]" - වැරදි අගය තිබේ නම්,
unset GOPROXYමගින් එය ඉවත් කරන්න. - Go හි නිවැරදි proxy එක සකසන්න:
go env -w GOPROXY=https://proxy.golang.org,direct(අවශ්ය නම් ඔබේ ආයතන proxy එක යොදා ගන්න). - වෙනත් සම්බන්ධිත විචල්ය පරීක්ෂා කරන්න:
go env GOPROXY GOFLAGS GOSUMDB. සාමාන්ය අගයන්https://proxy.golang.org,direct, GOFLAGS හි කිසිවක් නොමැති, GOSUMDB හිsum.golang.orgවේ. - කැෂ් පිරිසිදු කිරීම අවශ්ය නම්:
go clean -cache -testcache -modcache. - අවසන් වශයෙන්
go mod tidyනැවත ධාවනය කරන්න. දැන් දෝෂ පණිවිඩය නොපෙනේ.
ශ්රී ලංකාවට ඇති වැදගත්කම
ශ්රී ලංකාවේ බොහෝ තාක්ෂණික ආයතන, startup සහ විශ්වවිද්යාල සිසුන් Go භාවිතා කරයි. මොඩියුල proxy ගැටලුවක් ඇති වුවහොත්, dependency resolution දිගු වෙයි, වැඩ නිම කිරීමේ වේගය අඩු වේ. ඉහත විසඳුමෙන් පසු, සංවර්ධකයින්ට පහසුවෙන් module download කරගත හැකි වන අතර, corporate VPN හෝ proxy පද්ධති භාවිතා කරන ආයතනවලටත් නවීන proxy URL එකක් සකස් කර ගැනීමේ ක්රමය පැහැදිලි වේ.
ඉන් පසු, කේත ගුණාත්මකභාවය, CI/CD pipeline ස්ථායිතාවය, සහ ද්රව්යමය ව්යාපාරික නිෂ්පාදන වේගය වැඩිවේ. මෙය ශ්රී ලංකාවේ තාක්ෂණික සමාජයට තත්ත්වය උසස් කිරීමේ අත්යවශ්ය පියවරයකි.
මෙම පියවර 30 තත්පරයකින් කරගෙන, Go මොඩියුල ගැටලුවෙන් නිදහස් වන්න. ඔබේ වැඩපිළිවෙළ නැවත ගමන් කරමු!