直入主题:
在构建和执行go语言程序的时候,控制台抛出如下内容:
unexpected directory layout:
import path: _/Users/**/go/src/gocode.com/chestnut/chestnut_math
root: /Users/**/go/src
dir: /Users/**/go/src/gocode.com/chestnut/chestnut_math
expand root: /Users/**/go
expand dir: /Users/**/go/src/gocode.com/chestnut/chestnut_math
separator: /
Compilation finished with exit code 1
网上有文章说是目录重复了,我在自习检查之后确定没有问题,运行了其他的demo,是没有问题,那问题应该是写的有问题,通过排查发现,在import引入了该目录,代码如下:
import {
"./chestnut_math"
}
该引入是手敲的,删除该引用;
通过GoLand提示引入,发现引入的是如下目录:
import (
"bufio"
"fmt"
"gocode.com/chestnut/chestnut_math"
"os"
"strconv"
)
问题原因一目了然了,构建或运行代码的时候,go程序会把引入的模块去GOPATH下的src目录找,所以这块你对代码的引用要从src下面的目录开始引用。
如果此篇踩坑日记写的有问题,欢迎各位指点。不能误人子弟。
Good luck!