为什么提供 jersey-bundle 1.17.1 中的 asm 范围?

Why asm in jersey-bundle 1.17.1 is scope provided?

我正在使用 jersey-bundle 依赖项 (v1.17.1) 并获得 ClassNotFoundException: org.objectweb.asm.ClassVisitor

发生这种情况是因为 asm 在 jersey-bundle 中的依赖性被定义为提供的,因此在打包我的应用程序时没有检索 asm jar。

为什么asm定义为jersey-bundle pom中提供的?

<dependency>
<groupId>asm</groupId>
<artifactId>asm</artifactId>
<version>3.1</version>
<scope>provided</scope>
</dependency>

这个捆绑包的描述是:

A bundle containing code of all jar-based modules that provide JAX-RS and Jersey-related features. Such a bundle is only intended for developers that do not use Maven's dependency system. The bundle does not include code for contributes, tests and samples.

换句话说:它作为 maven 依赖项存在问题;-)

有一个问题 - JERSEY-599(已关闭 - 但并未真正解决)。