zoukankan      html  css  js  c++  java
  • golang 的GOPATH设置的问题

    go run footer.go 的时候呢, go会依次去GOPATH 和GOROOT设置的对应路径下面找对应的包(目录和文件)

    找的时候呢, 会在GoPATH 和GOROOT对应的目录后面再加一层路径 "/src/"哦

    ---------------------------------------------------------------------------------------------

    https://stackoverflow.com/questions/32110524/go-run-cannot-find-package

    I have a sample project setup based on this article.

    This is my directory structure:

    goloang/
    └── fooproject
        └── src
           ├── foo
              └── foo.go
           └── fooer
               └── fooer.go

    I have set the GOTPATH

    $ echo $GOPATH
    /Users/Bharat/Dev/golang/fooproject

    I am trying to run foor.go but I get a cannot find package error even though it exists in the location referenced by GOPATH i.e. in src/foo.

    This is how I am running it:

    $ pwd
    /Users/Bharat/Dev/goloang/fooproject/src/fooer
    
    $ go run fooer.go 
    fooer.go:4:3: cannot find package "foo" in any of:
        /usr/local/go/src/foo (from $GOROOT)
        /Users/Bharat/Dev/golang/fooproject/src/foo (from $GOPATH)

    These are the file contents.

    src/foo/foo.go:

    package foo
    
    import (
      "fmt"
    )
    
    func Bar() {
      fmt.Println("bar")
    }

    src/fooer/fooer.go:

    package main
    
    import (
      "foo"
    )
    
    func main() {
      foo.Bar()
    }

    I get the same error when I try to do go build fooer.go.

    Where am I going wrong with the project structure?

    -------------------------------------------------------------------------

    3down voteaccepted

    That might be because of a typo:

    goloang
    instead of
    golang

    You have:

    $ echo $GOPATH
    /Users/Bharat/Dev/golang/fooproject
                      ^^^^^^
    $ pwd
    /Users/Bharat/Dev/goloang/fooproject/src/fooer
                      ^^^^^^^
    shareedit
     
        
    goloang doesn't look like the correct spelling. – VonC Aug 20 '15 at 6:04
        
    Aah!! My eyes seem bad. It was really a stupid mistake. Another pair of eyes looking at it was helpful! It works now. – Bharat Aug 20 '15 at 6:06
        
    @Bharat 11PM in SF... I understand ;) I've been there many times. – VonC Aug 20 '15 at 6:07 
  • 相关阅读:
    appium---webview(H5)元素定位
    appium---切换webview时报错
    appium---如何判断原生页面和H5页面
    JDK与Java SE/EE/ME的区别
    Ubantu18.04安装WPS
    堆与栈的区别
    JAVA-基础(Stream流)
    Java面试(1)
    ubuntu自带截图工具
    Linux 下各个目录的作用及内容
  • 原文地址:https://www.cnblogs.com/oxspirt/p/7224248.html
Copyright © 2011-2022 走看看