Запуск go install приводит к ошибке

#windows #go #build

#Windows #Вперед #сборка

Вопрос:

Я установил go в Windows. Для GOPATH установлено значение this:

     c:go-workspace
  

В этом каталоге у меня есть файл с именем login.go:

     C:go-workspacesrcgithub.comllnwlogin
  

login.go содержит это:

     package main
    func main() {
      fmt.Printf("loginn")
    }
  

Я попробовал следующее для сборки:

     go build github.com/llnw/login/login
  

Но я получаю эту ошибку:

     can't load package: package github.com/llnw/login/login: cannot find package "github.com/llnw/login/login" in any of:
    C:Gosrcgithub.comllnwloginlogin (from $GOROOT)
    C:go-workspacesrcgithub.comllnwloginlogin (from $GOPATH)
  

Что я делаю не так?

Комментарии:

1. ваш пакет github.com/llnw/login и не github.com/llnw/login/login , просто выполните go build github.com/llnw/login

2. Спасибо, Яндри. Вы ответили на вопрос, но галочка отсутствует, поэтому я не могу указать, что вы ответили на него.

Ответ №1:

От go build -h :

 usage: build [-o output] [-i] [build flags] [packages]

Build compiles the packages named by the import paths,
along with their dependencies, but it does not install the results.

If the arguments to build are a list of .go files, build treats
them as a list of source files specifying a single package.
  

В вашем примере github.com/llnw/login/login не выглядит ни как пакет, ни как список .go файлов. Вероятно, вы ищете это:

 go build github.com/llnw/login
  

Предполагается, что при выполнении этой команды относительный путь github.com/llnw/login существует.