【问题标题】:undefined: revel.LoadConfig on revel app startundefined: revel.LoadConfig on revel app start
【发布时间】:2017-02-27 13:47:44
【问题描述】:

我在关注 this tutorial 使用 Go + Revel + MongoDB。但是当我启动应用程序时,我收到了这个错误:

The Go code api-go/app/init.go does not compile: undefined: revel.LoadConfig

以及我在终端中查看的其他错误。

ERROR 2016/10/18 17:15:06 build.go:108: # api-go/app
api-go/app/init.go:41: undefined: revel.LoadConfig
api-go/app/init.go:43: undefined: log in log.Fatalf
api-go/app/init.go:45: undefined: mongodb in mongodb.MaxPool
api-go/app/init.go:45: cannot assign to mongodb.MaxPool
api-go/app/init.go:46: undefined: mongodb in mongodb.PATH
api-go/app/init.go:46: cannot assign to mongodb.PATH
api-go/app/init.go:47: undefined: mongodb in mongodb.DBNAME
api-go/app/init.go:47: cannot assign to mongodb.DBNAME
api-go/app/init.go:48: undefined: mongodb in mongodb.CheckAndInitServiceConnection

我使用的是 Mac Sierra。我的申请有什么问题?

【问题讨论】:

  • 您的所有导入是否正确完成?例如,您的导入中有“日志”吗?
  • 我是 Go 开发新手。你指的是哪个文件?在控制器、模型中?
  • 我添加你的代码。这一次,除了api-go/app/init.go:45: undefined: revel.LoadConfig 之外的所有错误都消失了

标签: mongodb go mgo revel


【解决方案1】:

评论这行:

//Config, err := revel.LoadConfig("app.conf")
//if err != nil || Config == nil {
//        log.Fatalf("%+v",err)
//}

【讨论】:

    【解决方案2】:

    当我看到您的错误时,我认为您应该在文件“init.go”中添加此代码

         import ( 
            "log"
            "github.com/revel/revel" 
            “myapp/app/models/mongodb”
          ) 
    

    这在你的 init.go 的第一行下面包含“包”

    接下来你必须替换你的代码:

       revel.LoadConfig("app.conf")
    

    通过

       revel.config.LoadContext("app.conf",ConfPaths)
    

    其中 confPaths 是您的 conf 文件的字符串路径。在您的情况下,它可以是:

        ConfPaths := "conf/"
    

        ConfPaths := ""
    

    【讨论】:

    • 现在错误变为cannot refer to unexported name revel.config
    • revel.LoadConfig("app.conf") 说了什么?
    • 或试试revel.Config.LoadContext("app.conf",ConfPaths) 变化是“Config”以大写开头,这意味着您可以在导入时从其他包中访问它
    【解决方案3】:

    这对我有用。进口:

    import (
        "github.com/melkor217/myapp/app/models/mongodb"
        "github.com/revel/config"
        "github.com/revel/revel"
        "log"
    )
    

    加载配置:

    Config, err := config.LoadContext("app.conf", revel.ConfPaths)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-12
      • 2019-05-23
      • 2019-11-16
      • 1970-01-01
      • 1970-01-01
      • 2016-09-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多