登录
首页 >  Golang >  Go问答

go run:不能运行非主包

来源:Golang技术栈

时间:2023-04-22 12:14:04 346浏览 收藏

小伙伴们对Golang编程感兴趣吗?是否正在学习相关知识点?如果是,那么本文《go run:不能运行非主包》,就很适合你,本篇文章讲解的知识点主要包括golang。在之后的文章中也会多多分享相关知识点,希望对大家的知识积累有所帮助!

问题内容

这里是简单的 go 应用程序。如果我运行以下代码,我会收到“运行:无法运行非主包”错误。

package zsdfsdf

import (
    "fmt"
)

func Main() {
    fmt.Println("sddddddd")
}

要修复它,我只需要将包命名为main. 但我不明白为什么我需要这样做。我应该可以随意命名包。

另一个问题,我知道main函数是程序的入口点,你需要它。否则它将无法正常工作。但是我看到一些没有主要功能的代码仍然有效。

点击这个链接,页面底部的示例没有使用包main和main函数,它仍然有效。只是好奇为什么。

https://developers.google.com/appengine/docs/go/gettingstarted/usingdatastore

正确答案

您需要在 app.yaml 文件中指定您的应用访问点是什么。看看这里。您需要指定:

application: zsdfsdf

还可以从上面的链接中看到:

“注意:在编写独立的 Go 程序时,我们会将这段代码放在 main 包中。Go App Engine 运行时提供了一个特殊的 main 包,因此您应该将 HTTP 处理程序代码放在您选择的包中(在这种情况下,你好)。”

您是正确的,所有 Go 程序都需要该Main方法。但它是由 Google App Engine 提供的。这就是您提供的示例有效的原因。您的示例在本地不起作用(不适用于 GAE)。

好了,本文到此结束,带大家了解了《go run:不能运行非主包》,希望本文对你有所帮助!关注golang学习网公众号,给大家分享更多Golang知识!

声明:本文转载于:Golang技术栈 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>