Конфиг файлов и Голанг или просто ошибка новичка - PullRequest
1 голос
/ 01 октября 2019

Я сделал несколько уроков в Go и хотел попробовать что-то гораздо более актуальное, что мне понадобится относительно скоро. Я начинаю с того, что смотрю на гадюку и кобру. Я понимаю, что файл конфигурации на самом деле предназначен для использования Viper, а Cobra просто справляется с этим. Тем не менее, я застрял на том, чтобы даже преодолеть эту точку. Я, скорее всего, столкнусь с еще несколькими ошибками, но я застрял на этом, и любая помощь, которую я нахожу, не имеет никакого смысла, чтобы помочь моей проблеме. Таким образом, у меня есть приличный фон в C / C ++. А из чтения амперсанды и звёздочки используются похожим образом. Вот почему у меня проблемы с этим.

func init() {
     cobra.OnInitialize(initConfig)
     rootCmd.PersistentFlags().StringVar(&cfgFile, "config", "", "config file (default is $Home/.cobra.yaml)")
     rootCmd.PersistentFlags().StringVarP(&projectBase,"projectbase", "b", "", "base project direcoty eg. github.com")
     rootCmd.PersistentFlags().StringP("author", "a", "Rutger", "Written by rutger")
     rootCmd.PersistentFlags().StringVarP(&userLicense, "license", "l", "", "My license homie")
     viper.BindPFlag("author", rootCmd. PersistentFlags().Lookup("author"))
     viper.BindPFlag("projectbase", rootCmd.PersistentFlags().Lookup("projectbase"))
     viper.BindPFlag("useViper", rootCmd.PersistentFlags().Lookup("viper"))
     viper.SetDefault("author", "Rutger Luther <rutger.luther@printtrackerpro.com")
     viper.SetDefault("license", "nachos")
}

Это в основном пример, используемый здесь для гадюки и кобры. Go Cobra

Проблема в том, что я получаю эти ошибки.

cmd\root.go:25:40: undefined: projectBase
cmd\root.go:27:40: undefined: userLicense
cmd\root.go:39:15: undefined: homedir

Я делаю вызовы этим впервые, поэтому я не уверен, как они будут иметь какие-либо значения. Я прошу прощения, если это действительно простой вопрос. Но некоторые из этих страниц Go немного сложнее для понимания.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...