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

时间:2016-02-21 12:51:41

标签: java maven jersey java-bytecode-asm

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

这是因为asm在jersey-bundle中的依赖性被定义为提供,因此在打包我的app时不会检索asm jar。

为什么asm定义为jersey-bundle pom

中提供的
<dependency>
<groupId>asm</groupId>
<artifactId>asm</artifactId>
<version>3.1</version>
<scope>provided</scope>
</dependency>

1 个答案:

答案 0 :(得分:1)

此捆绑包的描述说:

  

包含提供JAX-RS的所有基于jar的模块的代码的包   和泽西相关的功能。这样的包仅用于   不使用Maven依赖系统的开发人员。捆绑了   不包括贡献,测试和样本的代码。

换句话说:它作为maven依赖项的错误; - )

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