Почему компилятор Go не находит библиотеку, которую я использую?

У меня есть простая программа Go в каталоге x:

package main

import (
        "log"
        "os"

        "github.com/yanzay/tbot"
)

func main() {
        bot, err := tbot.NewServer(os.Getenv("TELEGRAM_TOKEN"))
        if err != nil {
                log.Fatal(err)
        }
        bot.Handle("/answer", "42")
        bot.ListenAndServe()
}

x/pkg/windows_386/github.com/yanzay содержит файл tbot.a с библиотекой tbot, используемой в моей программе. x/src/github.com/yanzay/tbot содержит исходный код этой библиотеки.

Когда я запускаю go build main.go, я получаю такой вывод:

# command-line-arguments
.\main.go:12:21: undefined: tbot.NewServer

Как я могу убедиться, что компилятор Go находит пакет tbot в x/pkg или x/src?

Go находит библиотеку. Он не находит функцию NewServer. Вы уверены, что есть такая функция?

Denys Séguret 07.04.2019 17:09

@DenysSéguret Ты был прав. Отправьте свой комментарий в качестве ответа, и я приму его. Спасибо!

user6909438 07.04.2019 17:12
Создание API ввода вопросов на разных языках программирования (Python, PHP, Go и Node.js)
Создание API ввода вопросов на разных языках программирования (Python, PHP, Go и Node.js)
API ввода вопросов - это полезный инструмент для интеграции моделей машинного обучения, таких как ChatGPT, в приложения, требующие обработки...
2
2
55
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

undefined: tbot.NewServer означает, что Go находит библиотеку tbot, но не находит функцию NewServer.

В эта библиотека такой функции нет.


Другие вопросы по теме