go - IDE linter 无法解析 Go 本地模块导入
问题描述
代码编译得很好,但是当使用 replace 指令将包名称映射到本地目录时,Go linter 无法选择它。
我在 VSCode 和 Goland 上都试过这个,两者都有如下所示的 lint 错误。该图像是额外信息,所有代码和错误消息都以文本格式显示在下面。
存储库:https ://github.com/webberwang/go-lint-error
这是文件夹结构:
/core
/calc
math.go
go.mod
/main
app.go
go.mod
// main/app.go
package main
import (
"fmt"
"github.com/codelabstudios/core/calc" <- ERROR "Cannot resolve directory 'core'"
)
func main() {
result := calc.Add(1, 2) <- ERROR "Unresolved reference 'Add'"
fmt.Println("calc.Add(1, 2) => ", result)
}
// main/go.mod
module github.com/codelabstudios/main
go 1.14
require github.com/codelabstudios/core v0.0.0-00010101000000-000000000000
replace github.com/codelabstudios/core => ../core
// core/calc/math.go
package main
import (
"fmt"
"github.com/codelabstudios/core/calc"
)
func main() {
result := calc.Add(1, 2)
fmt.Println("calc.Add(1, 2) => ", result)
}
// core/calc/go.mod
module github.com/codelabstudios/core
go 1.14
解决方案
推荐阅读
- c# - 如何在 C# 中实现一个有效的算法来找到最大三个?
- multithreading - 如何在不指定超时值的情况下处理失败的守护线程并继续主线程?
- javascript - 在同一作业中使用 Node.JS 和 .NET 的 GitHub 操作
- javascript - 如何从反应选择组件中获取多个值
- reactjs - React.createElement: type is invalid -- 期望一个字符串(对于内置组件)或一个类/函数(对于复合组件)但是得到:null
- c# - 将 Long 转换为整数数组
- python - 如何在 Seaborn (Python) 中“移动”轴值?
- c++ - 在 qt 中分配 QGraphicsDropShadowEffect 对象时不会发生复制构造函数
- python - 保留 x 行并从 csv 文件中删除所有行
- css - 当我直接打开索引文件时,没有出现svg