網(wǎng)站首頁 編程語言 正文
前言
入門很容易的 hello world, 到使用自定義包算一個小的進(jìn)步,然而在使用上竟然浪費(fèi)了不少時(shí)間,上網(wǎng)查了半天,才解決問題.
第一明確 是哪種方式,是go mod 方式 還是 go path 方式, 請自己查一下,本小文直說go mog 方式的小問題.
首先看一下 文檔結(jié)構(gòu)
我自己寫了個 ToolKit.go, 內(nèi)容大致如下:
問題是:怎么引用它
//for all kind of tools package Toolkit import ( "net/http" "strings" ) func Left(str string, cnt int) string { l := strings.Count(str, "") if cnt >= l { cnt = l - 1 } else if l < 0 { l = 0 } return str[0:cnt] } ...
引用方式各種出錯,舉例如下:
package main import ( "testing" "ToolKit" )
或者:
package main import ( "testing" "./ToolKit" )
或者
package main import ( "testing" "/usr/local/src/go/iot_watcher/ToolKit" )
我能想到的方法都用到了,還是不行.
下面直接給出解決方案吧
查看 go.mod,內(nèi)容如下
module iot_watcher.com go 1.17
OK, 把 module 后面那個東西考下來, 寫成這樣
ackage main import ( "testing" "iot_watcher.com/ToolKit" )
就沒問題了.
為了方便,寫成別名引用方式
package main import ( "testing" ToolKit "iot_watcher.com/ToolKit" )
補(bǔ)充: 終于明白 go mod init anyName.com
這個anyName.com 東西的用途了(一點(diǎn)兒用途)
說實(shí)話, 我最討厭這種幾乎一點(diǎn)兒含金量都沒有的系統(tǒng)配置了. 從微軟的MFC 到go , 真是無奈.浪費(fèi)大量時(shí)間.
補(bǔ)充:go mod init出錯
go mod init出錯,錯誤提示如下:
go: cannot determine module path for source directory D:\workspace\go (outside GOPATH, no import comments)
解決辦法:添加模塊名參數(shù)
go mod init module_name
例如,在test目錄下,即test模塊,就用
go mod init test
總結(jié)
原文鏈接:https://blog.csdn.net/Uman/article/details/121774451
相關(guān)推薦
- 2022-10-15 script 標(biāo)簽 async 屬性
- 2023-03-01 Maui?Blazor?使用攝像頭實(shí)現(xiàn)代碼_其它綜合
- 2023-08-12 thinkadmin 單頁面多個富文本初始化
- 2022-03-09 軟件構(gòu)建工具makefile基礎(chǔ)講解_C 語言
- 2023-01-07 SafeList?in?Flutter?and?Dart小技巧_Android
- 2022-04-24 一起來學(xué)習(xí)C語言的字符串轉(zhuǎn)換函數(shù)_C 語言
- 2022-12-09 Python?hashlib模塊詳細(xì)講解使用方法_python
- 2024-01-14 Spring boot 注解@Async不生效 無效 不起作用
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運(yùn)行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運(yùn)算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實(shí)現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊(duì)列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支