• GoLand不同目录(包)方法调用


    新手学go,跨目录调用方法是真的难,弄了好几天,几乎要放弃go了,在此演示一下如何跨目录(包)调用~

    需求是main.go调用model包下mysql.go中Query方法,目录结构如下。

    要点:

    1.新建project时路径需要用域名形式(带符号‘.’),如test.cn,如果是普通的不带'点'的名字 GoLand引用时会报错。

    2.设置中启用“Enable Go Modules”

    3.在项目跟目录下执行go mod init

    4.调用时带上项目名,如import "test.cn/model"

    具体方法:

    1) project名使用域名,可新建test.cn,或者在已经建好的目录上右键Refactor,把文件夹名和project名都改了。

    2) Setting中设置启用go module(其他go path之类的无需设置,使用默认),路径:Go——Go Modules(vgo),勾选Enable Go Modules、不要勾选vendoring否则会有其他问题。

    3) 在编辑器左下方找到“Terminal”选项卡,进入后执行 go mod init命令,提示creating new go.mod即为成功

    4) 调用 import "test.cn/model",注意被调用的方法名首字母要大写哦!

    两个文件代码如下:

    main.go

    package main
    
    import (
    	"fmt"
    	"test.cn/model"
    )
    
    func main(){
    	var result string
    	result = model.Query()
    	fmt.Println(result)
    }
    

    mysql.go

    package model
    
    func Query() string{
    	return "张三"
    }
    

      

    执行结果如下

    import (
    "fmt"
    "test.cn/model"
    )
  • 相关阅读:
    BZOJ 1143 [CTSC2008]祭祀river
    BZOJ 3997 [TJOI2015]组合数学
    BZOJ 3996 [TJOI2015]线性代数
    BZOJ 4553 [Tjoi2016&Heoi2016]序列
    微信开发之密文模式 mcrypt_module_open 走不过
    JS JSON & ARRAY 遍历
    linux ftp服务器配置(Ubuntu)
    thinkphp 吐槽篇
    游戏--疯狂猜字随机混乱正确答案逻辑
    PHP 批量去除BOM头;此文转载;
  • 原文地址:https://www.cnblogs.com/wurijie/p/12006117.html
Copyright © 2020-2023  润新知