Golang 模块使用

Golang Module Use

我正在尝试 link 一些在线代码: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 创建了模块。

请问如何查看音频文件库包?比如,如何将它导入其他代码?

这道题的代码都在这里了,可以很方便的克隆和运行:https://github.com/Davo36/audiobaitpackagetest

非常感谢任何帮助。

您正在使用 github.com/TheCacophonyProject/audiobaitv2.0.0 版本。

此版本不包含 audiofilelibrary 包。但是 master 分支包含它。

您可以像这样更改 go.mod 文件以使用 master 分支。

module audiobaitpackagetest

go 1.13

require github.com/TheCacophonyProject/audiobait master

然后 运行 这个命令:

go mod tidy
go mod vendor # if you want to vendor it