【发布时间】:2017-05-11 12:18:37
【问题描述】:
我有一个使用 Jersey 的 Spring Boot 项目。 spring-jersey3 对 HK2 有依赖:
<dependency>
<groupId>org.glassfish.hk2</groupId>
<artifactId>hk2</artifactId>
<version>${hk2.version}</version>
</dependency>
HK2 的清单 Class-Path 如下所示:
Class-Path: $hk2-utils.$jar $javax.inject.$jar $hk2-api.$jar $aopallia
nce-repackaged.$jar $config-types.$jar $hk2-core.$jar $hk2-config.$ja
r $tiger-types.$jar $hibernate-validator.$jar $validation-api.$jar $j
boss-logging.$jar $classmate.$jar $hk2-locator.$jar $javax.inject.$ja
r $javassist.$jar $hk2-runlevel.$jar $class-model.$jar $asm-all-repac
kaged.$jar
当我将该项目部署为针对 Liberty Profile 的战争时,我收到很多关于 HK2 清单文件的错误消息。对于 HK2 清单文件中 Class-Path 中的每个 jar 文件,我都会收到一个这样的错误:
The manifest class path $hk2-utils.$jar can not be found in jar file wsjar:file:<path to WLP server>/usr/servers/int/dropins/<name of application>.war!/WEB-INF/lib/hk2-2.5.0-b32.jar or its parent.
hk2-2.5.0-b32.jar 不包含任何 jar 库,但 HK2 类路径中的所有库都存在于应用程序的 lib 文件夹中。
所以我的问题是:清单类路径中的这些美元符号是什么意思?这种语法是否可能是我的 Liberty Profile 服务器抱怨的原因?
【问题讨论】:
-
这对我来说只是一个错误
标签: java spring-boot websphere-liberty manifest.mf hk2