如何解决使用咖啡因时出现 java.lang.NoClassDefFoundError
我正在制作一个 minecraft 插件(使用 maven)并打算使用咖啡因作为缓存,但是当我使用插件 jar 运行我的服务器时,出现错误:
java.lang.NoClassDefFoundError: com/github/benmanes/caffeine/cache/caffeine
我已更新到最新版本的咖啡因 (v3.0.3) 和 maven (v3.8.1)。老实说,除了那个错误之外,我没有其他可显示的。我只导入了以下咖啡因包:
import com.github.benmanes.caffeine.cache.Cache;
import com.github.benmanes.caffeine.cache.caffeine
pom.xml(无回购)
<dependency>
<groupId>com.github.ben-manes.caffeine</groupId>
<artifactId>caffeine</artifactId>
<version>3.0.3</version>
</dependency>
服务器日志:https://pastebin.com/zMzx37dk
解决方法
看来原因是jar文件中没有包含该库。
尝试通过向 pom.xml 中的 plugins
添加如下代码来构建。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.2.4</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<createDependencyReducedPom>false</createDependencyReducedPom>
</configuration>
</execution>
</executions>
</plugin>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。