如何创建本地 VGO 应用程序模块
How do you create a local VGO application module
到目前为止,我看到的每个 vgo
示例都需要您编写模块,上传它,然后创建一个新的应用程序模块来测试基本模块。
有没有一种方法可以通过跳过回购步骤并仅向您的模块添加一个主包来向控制台输出一些内容来测试模块?
我尝试创建我的虚拟模块 module "example.com/m"
向 /example/testing.go
中的 package example
添加一个虚拟子包,然后添加一个简单的 main.go 并尝试导入示例包从我的虚拟模块无济于事。
如果我没有互联网,我会对 vgo 工作流程感到迷茫(没有它我会迷失)
我明白了。基本上 vgo 允许您在根目录中包含 package main
,但是这样做您只能在 vgo 项目的根目录中使用 'main' 包,因为 golang 只允许每个文件夹有一个包名称。这很好,因为您可以稍后删除主文件。
回答
在你的vgo项目根目录下创建一个package main
文件fn main
在您的 vgo 项目中创建任意数量的子包,例如:package example
在 example
子文件夹中。为了好玩,创建一个打印出 "Hello World" 的导出函数,并将其命名为 "WorldGreeting"
- 现在在您的主文件中,您可以通过调用您的模块名称后跟子包名称来导入此包。因此,例如,如果您的模块名称是
bitbucket.com/User/MyVGOPackage
那么您将在主文件中导入您的子包,例如 import "bitbucket.com/User/MyVGOPackage/example"
然后在主文件中调用您的函数 example.WorldGreeting()
- Build using
go build
构建完整目录(以防目录中有更多主要包)并且 vgo 将吐出一个名为 "MyVGOPackage.exe" 的 exe
提示:如果你只是想创建一个没有奇怪模块名称的应用程序,只需将你的模块重命名为简单的名称,如 "MyApplication",vgo 将完美理解你的导入。然后返回并将 "bitbucket.com/User/MyVGOPackage/example" 替换为 "MyApplication/example" ,一切都会正常构建。 Jetbrain 的 GoLand IDE 完全理解这种用法,所以如果 vs 代码在自动完成时遇到问题,请试一试。
到目前为止,我看到的每个 vgo
示例都需要您编写模块,上传它,然后创建一个新的应用程序模块来测试基本模块。
有没有一种方法可以通过跳过回购步骤并仅向您的模块添加一个主包来向控制台输出一些内容来测试模块?
我尝试创建我的虚拟模块 module "example.com/m"
向 /example/testing.go
中的 package example
添加一个虚拟子包,然后添加一个简单的 main.go 并尝试导入示例包从我的虚拟模块无济于事。
如果我没有互联网,我会对 vgo 工作流程感到迷茫(没有它我会迷失)
我明白了。基本上 vgo 允许您在根目录中包含 package main
,但是这样做您只能在 vgo 项目的根目录中使用 'main' 包,因为 golang 只允许每个文件夹有一个包名称。这很好,因为您可以稍后删除主文件。
回答
在你的vgo项目根目录下创建一个
package main
文件fn main
在您的 vgo 项目中创建任意数量的子包,例如:
package example
在example
子文件夹中。为了好玩,创建一个打印出 "Hello World" 的导出函数,并将其命名为 "WorldGreeting"- 现在在您的主文件中,您可以通过调用您的模块名称后跟子包名称来导入此包。因此,例如,如果您的模块名称是
bitbucket.com/User/MyVGOPackage
那么您将在主文件中导入您的子包,例如import "bitbucket.com/User/MyVGOPackage/example"
然后在主文件中调用您的函数example.WorldGreeting()
- Build using
go build
构建完整目录(以防目录中有更多主要包)并且 vgo 将吐出一个名为 "MyVGOPackage.exe" 的 exe
提示:如果你只是想创建一个没有奇怪模块名称的应用程序,只需将你的模块重命名为简单的名称,如 "MyApplication",vgo 将完美理解你的导入。然后返回并将 "bitbucket.com/User/MyVGOPackage/example" 替换为 "MyApplication/example" ,一切都会正常构建。 Jetbrain 的 GoLand IDE 完全理解这种用法,所以如果 vs 代码在自动完成时遇到问题,请试一试。