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\n")

}

 

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\test.go:2:8: cannot find package "calc" in any of:

D:\Go\src\calc (from $GOROOT)

D:\MyGo\src\calc (from $GOPATH)

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

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

 

posted @   red_leaf_412  阅读(1595)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示