当前位置: 首页 > wzjs >正文

wd设计视图可以做网站吗南京seo排名优化公司

wd设计视图可以做网站吗,南京seo排名优化公司,深圳做网站和视频宣传机构,广州10大网站开发GoLand中执行了go mod tidy,项目中import的包和go.mod的包还会爆红的问题解决 输入: go mod tidy结果: import包和go.mod的包还是全部爆红了 解决方法(在GoLand编译器中): 打开设置:File > Setting…

GoLand中执行了go mod tidy,项目中import的包和go.mod的包还会爆红的问题解决

输入:

go mod tidy

结果:

import包和go.mod的包还是全部爆红了

解决方法(在GoLand编译器中):

打开设置:File > Settings > Go > Go Modules。确保启用了 Go Modules Integration。在 Go > GOPATH 中,禁用 Index entire GOPATH。如果问题仍然存在,尝试关闭并重新启用 Go Modules Integration。

Q1 - 为什么这样可以???

👉 因为 go mod tidy + go mod vendor 本身是在修正 go.modvendor 目录,让 Go 工具链认账,但编辑器也必须同步刷新状态,才能一起认账。


来,细讲一下背后的原理:


1. go mod tidy 干了什么?
  • 补全go.mod 里面缺的依赖
  • 删除 不再用的依赖
  • 保证 go.modgo.sum 里面的依赖列表是最精简、最准确的

所以,tidy 是整理你的 go.mod 的,不整理,go.mod 有可能是错的。


2. go mod vendor 干了什么?
  • 把你 go.mod 里列出来的所有依赖,下载到本地 vendor/ 文件夹里。
  • 如果你的项目开启了 vendor 模式(Fabric 这种大项目一般都会开),编译和运行的时候只看 vendor,不看外面的 module cache

所以在 vendor 模式下,不跑 go mod vendor,你的本地 vendor/ 目录不更新,编译找不到包。


3. 为什么执行完还是爆红?

因为你的 编辑器没刷新缓存。 编辑器有自己的一份依赖快照,比如:

  • 依赖版本
  • 依赖位置
  • 包路径

你虽然在终端里 tidyvendor 了,但是编辑器的脑子还是停留在旧状态。

所以需要强制刷新编辑器的 Workspace。

(就像你换了电脑的文件,但 Word 文档没重开,还是旧内容。)


4. 总结一下为什么这样就可以了?
你做的事情起到的作用
go mod tidy整理 go.mod、补齐缺失依赖
go mod vendor更新 vendor 目录,让 vendor 模式可以用
编辑器刷新/重启让编辑器重新加载 go.mod + vendor 的正确状态

这三步一搞,Go工具链+编辑器都同步了,依赖自然就全对了。
爆红自然就没了。


🌟 一句话总结:

Go 项目的依赖管理是两层的,一层是终端的 Go 工具链,一层是你编辑器自己的缓存。两边都同步了,才不会出问题!

Q2 - go mod tidy等命令下载的包在哪里

go mod tidy 之类的命令 下载的包,实际上默认是放在 你的本地 Go module 缓存目录,不是你的项目目录里。

✅ 这个缓存目录叫做:

GOPATH/pkg/mod

一般默认的 GOPATH 是在:

  • Windows 上:C:\Users\你的用户名\go\pkg\mod
  • Linux/macOS 上:~/go/pkg/mod

举个例子:

比如我在 Windows 上,用户名是 jh,那么:

C:\Users\jh\go\pkg\mod

这里就是你的模块缓存目录。

比如下载了 github.com/spf13/viper@v1.20.1,那你能在 C:\Users\jh\go\pkg\mod\github.com\spf13\viper@v1.20.1\ 找到它。


再说下几个重要的小点:
内容说明
go.mod只记录 你依赖了什么模块,不存模块本体。
go mod tidy整理 go.mod,同时如果缺了,就去 GOPROXY(代理源)下载,缓存到 pkg/mod 里。
vendor/ 目录go mod vendor 命令单独拷出来的,只用来给特定项目本地编译使用,不是全局缓存。
pkg/mod是全局缓存,所有项目共用这套下载的模块。

小知识 🌟

你可以通过这个命令查看你的真正 GOPATH:

go env GOPATH

比如你执行:

go env GOPATH

输出:

C:\Users\jh\go

那就是你的包下载到了 C:\Users\jh\go\pkg\mod


总结一句话 ✅

go mod tidy 是下载到 GOPATH/pkg/mod 里,只有你 go mod vendor 才拷一份到项目的 vendor/。

Q3 - 每次有新项目运行时更新的都是这里的文件吗

✅ 正确!你理解得非常准确!


来,我帮你完整梳理一下:


🛠 当你在新项目里运行 go mod tidygo build

流程是这样的

  1. 检查 本地 GOPATH/pkg/mod 有没有要用的依赖。
  2. 如果 ,就直接拿来用(不重新下载)。
  3. 如果 没有,就去 GOPROXY(默认 https://proxy.golang.org,国内可能是 goproxy.cn)下载下来,存到本地 GOPATH/pkg/mod
  4. 以后所有项目共用同一份缓存,不重复下载!

🔥 小总结
事情发生在哪备注
下载依赖GOPATH/pkg/mod全局缓存
编译、运行用缓存里的包有 vendor 时用 vendor 里的
有 vendor/ 目录项目优先用 vendor/ 下的包防止别人改了远程包,自己代码受影响

✨ 小例子

比如:

  • 你第一个项目用 github.com/spf13/viper@v1.20.1
  • 第一个项目执行 go mod tidy,会下载一次,存在 pkg/mod 里。
  • 第二个项目如果也用 viper@v1.20.1直接用缓存不会再重新下载,非常快!

这就是 Go module 设计里非常高效的一部分:
“一次下载,全局共享,多项目共用”


🚀 额外补充:如果想手动控制缓存呢?
命令作用
go clean -modcache清空 pkg/mod 缓存,释放空间(慎用)
go env GOPATH查看 GOPATH 位置
go env GOMODCACHE查看 mod 缓存目录(一般是 GOPATH/pkg/mod

📢 特别注意

如果你执行了 go clean -modcache下次再运行项目会重新下载所有依赖
所以只有在空间特别紧张、或者模块坏了(冲突了)的时候才清理!

http://www.dtcms.com/wzjs/167734.html

相关文章:

  • 甘肃农产品网站建设英文网站推广
  • 网站建设推广邮件宁波seo快速优化平台
  • 网站推广的全套方式自制网页
  • 网站建设书籍篮网目前排名
  • 政府门户网站建设工作计划seo可以提升企业网站的
  • 容桂网站制作效率好郴州网站建设
  • wordpress ueditor 代码 转义成都纯手工seo
  • 建网站详细步骤推广营销策划方案
  • 自贡做响应式网站开发公司百度seo教程网
  • 免费自己做网站优化软件有哪些
  • 网站域名多少钱seo兼职
  • 网站开发源码如何建网站赚钱
  • 台州快速建站公司windows优化大师是电脑自带的吗
  • 网站后台ftp在哪登录百度账号
  • 怎样在门户网站做 推广推广赚钱软件
  • 做网站送独立ip什么意思市场营销案例100例
  • 网站禁用复制广州seo网站推广公司
  • 建网站需多少钱html做一个简单的网页
  • 移动建站价格百度青岛代理公司
  • 专业网站建设哪里找成都网站seo厂家
  • 高端网站制作技术自制网站教程
  • 浙江住房和城乡建设委员会网站百度关键词投放
  • 淮南二中网站建设网络营销技术
  • 深圳网站建设公司 犀牛云 移动云网站海口网站关键词优化
  • 爱站网站长seo综合查询工具在线代理浏览网站免费
  • 免费个人logo设计网站百度移动版
  • 公司网站建设维护及使用管理办法搜索引擎的网站
  • 南宁做企业网站在线网页服务器
  • 如何做一名优秀的网站管理者seo技术外包 乐云践新专家
  • 电子商务网站流程设计微信营销方案