Java 无法添加电报Bot库;初学者失败了?

Java 无法添加电报Bot库;初学者失败了?,java,bots,telegram,Java,Bots,Telegram,我刚开始脱离大学的任务,做我自己的项目。 我想编写一个Java电报机器人程序来与其他类交互。不幸的是,我无法正确添加依赖项,或者它无法导入所有函数。我试图学习多个教程,但都有错误。以下是最有希望的教程之一: 我按照说明(使用Maven添加了库)输入代码。在此之后,我导入了所需的库。但是程序不能调用方法“execute”,我不知道为什么。 我希望我详细说明了这个主题。 先谢谢你 主要类别: import org.telegram.telegrambots.ApiContextInitializer

我刚开始脱离大学的任务,做我自己的项目。 我想编写一个Java电报机器人程序来与其他类交互。不幸的是,我无法正确添加依赖项,或者它无法导入所有函数。我试图学习多个教程,但都有错误。以下是最有希望的教程之一:

我按照说明(使用Maven添加了库)输入代码。在此之后,我导入了所需的库。但是程序不能调用方法“execute”,我不知道为什么。 我希望我详细说明了这个主题。 先谢谢你

主要类别:

import org.telegram.telegrambots.ApiContextInitializer;
        import org.telegram.telegrambots.meta.TelegramBotsApi;
        import org.telegram.telegrambots.meta.exceptions.TelegramApiException;
        import org.telegram.telegrambots.meta.generics.LongPollingBot;

public class Main {
    public static void main(String[] args) {

        ApiContextInitializer.init();

        TelegramBotsApi botsApi = new TelegramBotsApi();

        try {
            botsApi.registerBot((LongPollingBot) new Bot());
        } catch (TelegramApiException e) {
            e.printStackTrace();
        }
    }
}
机器人类

import org.telegram.telegrambots.api.objects.Update;
import org.telegram.telegrambots.bots.TelegramLongPollingBot;
import org.telegram.telegrambots.meta.api.methods.send.SendMessage;
import org.telegram.telegrambots.meta.exceptions.TelegramApiException;

public class Bot extends TelegramLongPollingBot {

    @Override
    public void onUpdateReceived(Update update) {
        // We check if the update has a message and the message has text
        if (update.hasMessage() && update.getMessage().hasText()) {
            SendMessage message = new SendMessage() // Create a SendMessage object with mandatory fields
                    .setChatId(update.getMessage().getChatId())
                    .setText(update.getMessage().getText());
            try {
                execute(message); // Call method to send the message
            } catch (TelegramApiException e) {
                e.printStackTrace();
            }
        }
    }

    @Override
    public String getBotUsername() {
        return null;
    }

    @Override
    public String getBotToken() {
        return null;
    }

    @Override
    public void onClosing() {

    }
}

错误


在POM.xml文件中,我添加了以下依赖项:

<!-- https://mvnrepository.com/artifact/org.telegram/telegrambots -->
<dependency>
    <groupId>org.telegram</groupId>
    <artifactId>telegrambots</artifactId>
    <version>4.9.2</version>
</dependency>

组织电报
电报机器人
4.9.2
您也可以直接下载jar。 您必须使用BotFather创建和定义bot,使用用户名,获取令牌并创建扩展TelegrameLongPollingbot的类


您的问题在于返回始终为null的令牌和用户名。您必须返回使用BothFather创建的配置。

在POM.xml文件中,我添加了以下依赖项:

<!-- https://mvnrepository.com/artifact/org.telegram/telegrambots -->
<dependency>
    <groupId>org.telegram</groupId>
    <artifactId>telegrambots</artifactId>
    <version>4.9.2</version>
</dependency>

组织电报
电报机器人
4.9.2
您也可以直接下载jar。 您必须使用BotFather创建和定义bot,使用用户名,获取令牌并创建扩展TelegrameLongPollingbot的类


您的问题在于返回始终为null的令牌和用户名。您必须返回使用BothFather创建的配置。

您必须在getters botToken和botUsername中设置bot的令牌和用户名

return "<token>";

return "<username_of_bot>";
返回“”;
返回“”;

至少要设置令牌的最小值。

必须在getters botToken和botUsername中设置bot的令牌和用户名

return "<token>";

return "<username_of_bot>";
返回“”;
返回“”;

至少要有一个令牌。

您能发送pom.xml文件吗?还是你用罐子?我想我用的是罐子。因为我刚开始编程,无法解决问题,所以项目不再进行。我不知道什么时候我会回到它。你能发送pom.xml文件吗?还是你用罐子?我想我用的是罐子。因为我刚开始编程,无法解决问题,所以项目不再进行。我不知道什么时候我会回来。