繁体   English   中英

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

[英]Exception in thread "main" java.lang.NoClassDefFoundError: com/google/inject/Module

新用户来了! 我知道有类似的问题可以回答这个问题,但我不知道如何将它们应用到我的案例中,如果它是重复的,很抱歉!

所以......我正在尝试为 Telegram 制作我的第一个机器人,我决定使用 Java。 我正在关注本教程并复制粘贴了两个示例类(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>

`

当我运行程序时,我收到此错误:

线程“main”中的异常 java.lang.NoClassDefFoundError: com/google/inject/Module at org.telegram.telegrambots.ApiContext.getInjector(ApiContext.java:46) at org.telegram.telegrambots.ApiContext.getInstance(ApiContext.java :25) at org.telegram.telegrambots.bots.TelegramLongPollingBot.(TelegramLongPollingBot.java:17) at Pearlbot.EchoBot.(EchoBot.java:8) at Pearlbot.Main.main(Main.java:17) 原因:java .lang.ClassNotFoundException: com.google.inject.Module at 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 是什么,所以如果它与它相关,你需要解释什么是错的,就像你在和一个孩子说话一样! ^^''

当我尝试为 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 ),将其复制到任何文件夹中,并将其添加到项目的构建路径中作为外部罐。

从 Eclipse,转到帮助 > 安装软件,或者您也可以从市场安装(帮助 > 市场)。 从市场安装TestNG后,它可以工作,但是将GUICE422.jar安装到构建路径对我有用所以请确保在从市场安装TestNG后,安装Guice422 Jar文件以及从eclipse市场安装testng的链接

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM