将HikariCP着色为jar不会起作用

时间:2016-09-19 17:35:58

标签: java maven jar minecraft bukkit

现在这看起来很奇怪,它不应该发生。无论如何,让我解释一下发生了什么: 我正在制作一个恰好需要数据库访问的bukkit插件。为此,我使用了HikariCP。我曾经在几个项目中使用它,我应该没有问题,但是发生了一些非常奇怪的事情。将它作为依赖项添加到我的pom并配置了阴影插件来遮蔽它后,我构建了jar。我甚至通过使用Winrar来检查它的内容来解压缩它,它看起来应该是这样。但是,只要我加载它,我就得到了NoClassDefFound异常。如果这对你有帮助,我会在这里提供pom,但正如我所说,最后的罐子看起来很好。此外,如果您不熟悉Bukkit及其处理插件的方式,那么它非常简单。它基本上有一个放置你的罐子(插件)的文件夹。然后它会扫描它,然后加载插件的主类(在jar中的yml文件中定义并且必须扩展JavaPlugin),然后调用主类中的onEnable()方法。

编辑:忘记添加pom,这里是:http://hastebin.com/rapijoyona.xml 此外,如果您需要堆栈跟踪:http://hastebin.com/owazutekum.go

1 个答案:

答案 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>

是的,我读了你写的内容,但尝试一下可能效果更好