现在这看起来很奇怪,它不应该发生。无论如何,让我解释一下发生了什么:
我正在制作一个恰好需要数据库访问的bukkit插件。为此,我使用了HikariCP。我曾经在几个项目中使用它,我应该没有问题,但是发生了一些非常奇怪的事情。将它作为依赖项添加到我的pom并配置了阴影插件来遮蔽它后,我构建了jar。我甚至通过使用Winrar来检查它的内容来解压缩它,它看起来应该是这样。但是,只要我加载它,我就得到了NoClassDefFound异常。如果这对你有帮助,我会在这里提供pom,但正如我所说,最后的罐子看起来很好。此外,如果您不熟悉Bukkit及其处理插件的方式,那么它非常简单。它基本上有一个放置你的罐子(插件)的文件夹。然后它会扫描它,然后加载插件的主类(在jar中的yml文件中定义并且必须扩展JavaPlugin),然后调用主类中的onEnable()
方法。
编辑:忘记添加pom,这里是:http://hastebin.com/rapijoyona.xml 此外,如果您需要堆栈跟踪:http://hastebin.com/owazutekum.go
答案 0 :(得分:1)
您必须定义应该着色的内容。
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<shadedArtifactId>${project.artifactId}-${minecraft.version}</shadedArtifactId>
<shadedArtifactAttached>true</shadedArtifactAttached>
<shadedClassifierName>shaded</shadedClassifierName>
<minimizeJar>true</minimizeJar>
<!-- INCLUDE SHADE-->
<artifactSet>
<includes>
<include>groupId:artifactId</include>
</includes>
</artifactSet>
</configuration>
</execution>
是的,我读了你写的内容,但尝试一下可能效果更好