到目前为止,我在vgo上看到的每个示例都要求您编写模块,上传模块,然后创建一个新的应用程序模块以测试基本模块。

有没有一种方法可以通过跳过repo步骤并仅向模块添加主程序包以向控制台吐出一些东西来测试模块?

我尝试创建我的虚拟模块module "example.com/m",将一个虚拟子包添加到package example中的/example/testing.go中,然后添加了一个简单的main.go,并尝试从我的虚拟模块中导入示例包无济于事。

如果我没有互联网,我会在vgo工作流程中迷路(如果没有它我会迷路)

最佳答案

我想到了。基本上,vgo允许您在根目录中包含package main,但是这样做只能在vgo项目的根目录中使用'main'软件包,因为golang每个文件夹只允许一个软件包名称。很好,因为您以后可以根据需要删除主文件。

回答

  • 使用package main
  • 在vgo项目的根目录中创建fn main文件
  • 在vgo项目ex .: package example子文件夹中的example中创建任意数量的子包。为了好玩,创建一个导出的函数,将其输出“Hello World”,并将其命名为“WorldGreeting”
  • 现在,在主文件中,可以通过调用模块名称以及子软件包名称来导入此软件包。因此,例如,如果您的模块名称为bitbucket.com/User/MyVGOPackage,则可以将子包导入到import "bitbucket.com/User/MyVGOPackage/example"之类的主文件中,然后在example.WorldGreeting()主体中调用函数
  • 使用go build进行构建以构建完整目录(以防在目录中有更多主软件包的情况下),而vgo将吐出一个名为“MyVGOPackage.exe”的exe文件。

  • 提示:如果您只想创建一个不带有奇怪模块名称的应用程序,只需将模块重命名为“MyApplication”之类的简单名称,vgo就会完全理解您的导入。然后返回并将“bitbucket.com/User/MyVGOPackage/example”替换为“MyApplication/example”,一切将正常构建。 Jetbrain的GoLand IDE完全理解此用法,因此如果vs代码自动完成问题,请尝试一下。

    关于go - 如何创建本地VGO应用程序模块,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51696098/

    10-11 14:01