在不使用模块的情况下使用单个本地导入运行单个 Go 文件

我有一系列按使用链接但在逻辑上独立的go文件。它们都使用在单独文件中定义的一组通用辅助函数。


我的目录结构如下图。


src/

├── foo1.go

├── foo2.go

├── ...

├── fooN.go

└── helper/

      └── helper.go

foox.go文件都是这种形式 -


package main


import help "./helper"


// functions and structs that use functionality in

// helper but are not related to anything going on

// in other foox.go files


func main() {

    // more things that uses functionality in helper

    // but are not related to anything going on in

    // other foox.go files


    return

}

我正在使用 运行特定文件go run foox.go,但最近更新了我的 Go 版本。由于不再允许相对导入,此工作流程现已中断 -


"./helper" is relative, but relative import paths are not supported in module mode


构造一个集合独立的 Go 文件的正确方法是什么,这些文件都依赖于相同的辅助函数集合?


所有指南都说要使用模块,但在这种情况下,这意味着每个 foox.go 文件都有一个单独的模块,其中每个文件包含funcs、structs等,永远不会在任何其他模块中使用。


我想要做的就是能够运行一个包含另一个本地 .go 文件的单个 .go 文件,而无需经历制作数十个模块的麻烦。


阿晨1998
浏览 246回答 1
1回答

jeck猫

您可以通过设置环境变量来禁用模块模式GO111MODULE=off
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go