猿问

包括罐子中的JAR在内的Classpath

包括罐子中的JAR在内的Classpath

是否可以指定Javaclasspath其中包括包含在另一个JAR文件中的JAR文件?



明月笑刀无情
浏览 288回答 3
3回答

森栏

如果您试图创建一个包含应用程序及其所需库的JAR,那么有两种方法(据我所知)可以做到这一点。第一个是单缸,它使用一个特殊的类加载器来允许JAR的嵌套。二是乌伯贾尔、(或)遮荫),这会使所包含的库爆炸,并将所有类放入顶级JAR中。我还应该指出,UberJar和Shade分别是Maven 1和Maven 2的插件。如下面所述,您还可以使用程序集插件(实际上它更强大,但更难正确配置)。

大话西游666

你不想使用那些“爆炸罐内容”的解决方案。它们肯定会让你更难看到东西(因为所有的东西都是在同一个层次上爆炸的)。此外,可能会出现命名冲突(如果人们使用适当的包,则不应该发生命名冲突,但您不能总是控制这一点)。您想要的功能是排名前25位的Sun RFE: RFE 4648386太阳,在他们无限的智慧中,被认为是低优先级的。我们只能希望太阳醒来.。同时,我遇到的最好的解决方案(我希望Sun能够在JDK中复制)是使用自定义类加载器。JarClassLoader.
随时随地看视频慕课网APP

相关分类

Java
我要回答