goland中引用包

首先在工程目录下新建三个目录:bin, pkg,src

Bin文件夹是放置编译后的exe文件

Pkg文件夹是放置包生成后的.a文件

Src文件夹是放置包文件的地方

工程组织目录如下,在src中有test.go。以及add.go在calc文件夹下

代码如下:

add.go

package calc               //注意和文件夹目录名一致

func Add(a int, b int)(int){     //注意函数名第一个字母大写,否则识别不了包

        return a+b

}

test.go

package main

import "calc"         //和test.go位于同一层级下,可以不用import

func test(){

        print("hello world again ")

}

func main(){

        var ret int

        test()

        ret=calc.Add(3,4)            //引用包中的函数

        println("hello world")

        println(ret)

}

执行完后可以看到在bin和pkg文件夹下面都生成了对应的文件

在src下也可以是多级目录,比如如下图

在test.go中引用如下

import (

        "func/calc"      //根据目录路径引用,默认是从src文件夹下面

        "cal"

)

如果是出现如下的错误。那么就需要再goland中做相应的设置

src est.go:2:8: cannot find package "calc" in any of:

D:Gosrccalc (from $GOROOT)

D:MyGosrccalc (from $GOPATH)

因为自定义包,程序会自动从GOROOT和GOPATH下的src文件夹去寻找。如果工程不是建在GOPATH目录下的。那么需要在goland中做相应的配置。在project GOPATH中添加工程目录

或者是在GOPATH系统变量中增加对应的工程路径

原文地址:https://www.cnblogs.com/zhanghongfeng/p/9426361.html