Golang模块使用

我正在尝试链接到一些在线代码:https ://github.com/TheCacophonyProject/audiobait

我正在帮助完成这个项目,并更改了该存储库以创建一个名为 audiofilelibrary 的新包。

然后我尝试在一个非常简单的程序中使用该代码:

package main


import (

    "fmt"


    "github.com/TheCacophonyProject/audiobait/audiofilelibrary"

    "github.com/TheCacophonyProject/audiobait/playlist"

)


func main() {


    audio := audioFileLibrary.AudioFileLibrary{}

    fmt.Println(audio.soundsDirectory)

    sched := playlist.Schedule{}

    fmt.Println(sched.Description)


}

您会看到我从该存储库导入了 2 个包:音频文件库和播放列表。播放列表有效,音频文件库无效。它们似乎以相同的方式编码。


这是我得到的错误:


$ go build

go: finding github.com/TheCacophonyProject/audiobait v2.0.0

go: finding github.com/nathan-osman/go-sunrise latest

go: finding github.com/TheCacophonyProject/audiobait/audiofilelibrary latest

build audiobaitpackagetest: cannot load 

github.com/TheCacophonyProject/audiobait/audiofilelibrary: 

cannot find module providing package 

github.com/TheCacophonyProject/audiobait/audiofilelibrary

这是我的 go.mod 文件,位于名为 audiobaitpackagetest 的目录中:


module audiobaitpackagetest


go 1.13


require github.com/TheCacophonyProject/audiobait v0.0.0-20191013210352-81b0afd9a085

我使用命令创建了该模块go mod init audiobaitpackagetest。


请问如何查看audiofilelibrary包?例如,如何将其导入其他代码中?


这个问题的代码都在这里,因此可以轻松克隆并运行: https: //github.com/Davo36/audiobaitpackagetest


非常感谢任何帮助。


一只甜甜圈
浏览 76回答 1
1回答

猛跑小猪

您正在使用v2.0.0版本github.com/TheCacophonyProject/audiobait。该版本不包含audiofilelibrary安装包。但master分支包含它。您可以go.mod像这样更改文件以使用master分支。module audiobaitpackagetestgo 1.13require github.com/TheCacophonyProject/audiobait master然后运行以下命令:go mod tidygo mod vendor # if you want to vendor it
打开App,查看更多内容
随时随地看视频慕课网APP