我最近遇到一种情况,我们将有一个空的清单jar(即仅具有META-INF / MANIFEST.MF且具有Class-Path属性的jar)引用文件系统上某个其他jar文件。我相信此清单jar的创建就像是到特定版本jar的软链接一样,因此用户无需处理实施jar的次要版本更改。
manifest.jar:-
----META-INF/
--------MANIFEST.MF
Actual version specific implementation jar (test-1.1.jar):-
----META-INF/
--------MANIFEST.MF
----test/
--------Test1.class
在应用程序的类路径中包括manifest.jar不会加载实际的实现jar,因此我看到ClassNotFoundException。知道为什么它不加载以及如何按预期方式加载此jar?
[使用java -jar somejar.jar
时,类路径设置如下: