java.lang.NoClassDefFoundError:com/google/common/cache/RemovalListener
我想工作电报API,我在电报中创建机器人,设置用户名并获得令牌,但我无法连接我的java代码,请帮助我 我使用这个代码java.lang.NoClassDefFoundError:com/google/common/cache/RemovalListener,java,api,telegram-bot,Java,Api,Telegram Bot,我想工作电报API,我在电报中创建机器人,设置用户名并获得令牌,但我无法连接我的java代码,请帮助我 我使用这个代码 ApiContextInitializer.init(); TelegramBotsApi telegramBotsApi = new TelegramBotsApi(); try { telegramBotsApi.registerBot(new TradeBot()); } catch (TelegramApiException e) { e.printSt
ApiContextInitializer.init();
TelegramBotsApi telegramBotsApi = new TelegramBotsApi();
try {
telegramBotsApi.registerBot(new TradeBot());
} catch (TelegramApiException e) {
e.printStackTrace();
}
我的代理已设置,测试连接正确
public class TradeBot extends TelegramLongPollingBot {
public void onUpdateReceived(Update update) {
}
public String getBotUsername() {
return "xxx";
}
public String getBotToken() {
return "xxx";
}
}
运行后,代码会给出以下错误:
Exception in thread "main" java.lang.NoClassDefFoundError: com/google/common/cache/RemovalListener
at com.google.inject.internal.InheritingState.<init>(InheritingState.java:63)
at com.google.inject.internal.InjectorShell$Builder.getState(InjectorShell.java:208)
at com.google.inject.internal.InjectorShell$Builder.lock(InjectorShell.java:114)
at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:102)
at com.google.inject.Guice.createInjector(Guice.java:87)
at com.google.inject.Guice.createInjector(Guice.java:69)
at com.google.inject.Guice.createInjector(Guice.java:59)
at org.telegram.telegrambots.meta.ApiContext.getInjector(ApiContext.java:48)
at org.telegram.telegrambots.meta.ApiContext.getInstance(ApiContext.java:27)
at org.telegram.telegrambots.bots.TelegramLongPollingBot.<init>(TelegramLongPollingBot.java:16)
at TradeBot.<init>(TradeBot.java:6)
at MainClass.main(MainClass.java:10)
Caused by: java.lang.ClassNotFoundException: com.google.common.cache.RemovalListener
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:602)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
... 12 more
线程“main”java.lang.NoClassDefFoundError中出现异常:com/google/common/cache/RemovalListener
位于com.google.inject.internal.InheritingState.(InheritingState.java:63)
位于com.google.inject.internal.InjectorShell$Builder.getState(InjectorShell.java:208)
位于com.google.inject.internal.InjectorShell$Builder.lock(InjectorShell.java:114)
在com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:102)上
位于com.google.inject.Guice.createInjector(Guice.java:87)
位于com.google.inject.Guice.createInjector(Guice.java:69)
位于com.google.inject.Guice.createInjector(Guice.java:59)
在org.telegrame.telegrambots.meta.ApiContext.getInjector(ApiContext.java:48)上
位于org.telegrame.telegrambots.meta.ApiContext.getInstance(ApiContext.java:27)
在org.telegrame.telegrambots.bots.telegramongpollingbot.(telegramongpollingbot.java:16)
在TradeBot(TradeBot.java:6)
在MainClass.main(MainClass.java:10)
原因:java.lang.ClassNotFoundException:com.google.common.cache.RemovalListener
位于java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:602)
位于java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
位于java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
... 还有12个
在这里得到了回答:
您需要与您正在使用的com.google.guava/guava
库相关的com.google.inject/guice
依赖项的正确版本。回答如下:
您需要与正在使用的com.google.inject/guice
库相关的com.google.guava/guava
依赖项的正确版本