到目前为止,我在vgo
上看到的每个例子都要求你编写模块,上传它然后创建一个新的应用程序模块来测试一个基本模块。
有没有办法通过跳过repo步骤来测试模块,只是将一个包main添加到你的模块只是为了向控制台吐出一些东西?
我已经尝试创建我的虚拟模块module "example.com/m"
在package example
中添加一个虚拟子包到/example/testing.go
然后添加了一个简单的main.go并尝试从我的虚拟模块导入示例包无济于事。
如果我没有互联网,我会对vgo工作流程感到很遗憾(我没有它就丢失了)
我想到了。基本上vgo允许你在根目录中包含package main
,但是通过这样做你只能在你的vgo项目的根目录中使用'main'包,因为golang只允许每个文件夹一个包名。这很好,因为您可以在以后删除主文件。
回答
package main
在vgo项目的根目录中创建fn main
文件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代码有问题自动完成,请试一试。