线程“ main”中的异常java.lang.NoClassDefFoundError:com / google / inject / Module

问题描述 投票:0回答:2

新用户在这里!我知道也有类似的问题,但我不知道如何将其应用于我的案子,如果重复的话,对不起!

所以...我正在尝试为Telegram做我的第一个机器人,我决定使用Java。我关注this tutorial,并从两个示例类(EchoBot和Main)中复制了代码。我唯一更改的是带有从Telegram上的BotGodfather获得的令牌的令牌。我在Ubuntu 18.04.1上使用Eclipse作为IDE,所以我首先创建一个Java项目,然后将其配置为Maven项目。这是我的pom.xml的代码:`

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>EchoBot</groupId>
  <artifactId>EchoBot</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <name>EchoBot</name>
  <dependencies>
    <dependency>
     <groupId>org.telegram</groupId>
     <artifactId>telegrambots</artifactId>
     <version>3.6.1</version>
    </dependency>
  </dependencies>
  <build>
    <sourceDirectory>src</sourceDirectory>
    <plugins>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.7.0</version>
        <configuration>
          <release>10</release>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>

`

运行程序时出现此错误:

线程“主”中的异常java.lang.NoClassDefFoundError:com / google / inject / Module在org.telegram.telegrambots.ApiContext.getInjector(ApiContext.java:46)在org.telegram.telegrambots.ApiContext.getInstance(ApiContext.java:25)在org.telegram.telegrambots.bots.TelegramLongPollingBot。(TelegramLongPollingBot.java:17)在Pearlbot.EchoBot(EchoBot.java:8)在pearlbot.Main.main(Main.java:17)造成原因:java.lang.ClassNotFoundException:com.google.inject.Module在java.base / jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:583)在java.base / jdk.internal.loader.ClassLoaders $ AppClassLoader.loadClass(ClassLoaders.java:190)在java.base / java.lang.ClassLoader.loadClass(ClassLoader.java:499)...还有5个]

问题可能是什么?请记住,我什至都不知道Maven是什么,因此,如果它与Maven有关,则需要像在跟孩子说话一样,解释问题所在! ^^''

java maven bots telegram noclassdeffounderror
2个回答
1
投票

当我尝试为Eclipse版本安装testng时,出现此错误:2019-12(4.14.0)并运行程序,然后出现此错误。终于我得到了解决-

适用于Java开发人员的Eclipse IDE,版本:2019-12(4.14.0),内部版本ID:20191212-1212。TestNG 7.1.0.r202001120626

从包含测试的项目的构建路径中删除TestNG库,并从菜单“帮助/安装新软件”中安装TestNG对我不起作用,我一直收到此错误。

对我有用的是下载guice-4.2.2.jar(从https://github.com/google/guice/wiki/Guice422),将其复制到任何文件夹,并将其作为外部JAR添加到项目的构建路径。

从Eclipse转到帮助>安装软件,或者也可以从市场进行安装(帮助>市场)。从市场上安装TestNG后,它可以工作,但是将GUICE422.jar安装到构建路径对我来说却有效因此,请确保从市场上安装TestNG之后,还要安装Guice422 Jar文件link to install testng from eclipse market place

这对我有用---希望对您有帮助


0
投票

有关详细信息,请导航至此link

© www.soinside.com 2019 - 2024. All rights reserved.