泽西杰克逊和codehaus vs. fasterxml

我使用泽西1.17.1与杰克逊2.2.1。看来,Jackson将包从org.codehaus切换到com.fasterxml。我有我所有的代码配置正确,并使用最新的杰克逊。但是,似乎泽西仍然在拉动org.codehaus.jackson。有什么办法缓解这一点,还是应该坚持使用codehaus包,直到jersey升级为使用fasterxml包?

谢谢。

最佳答案
老的杰克逊图书馆被作为jersey-json的神器的依赖。什么时候

<dependency>
    <groupId>com.sun.jersey</groupId>
    <artifactId>jersey-json</artifactId>
    <version>1.17</version>
</dependency>

包含在您的POM中,您将自动获得包含在您的项目中的org.codehaus.jackson库的版本。不幸的是,jersey-json本身具有链接时间依赖于Jackson类,所以你不能简单地使用exclusions.你想做什么,而是完全忽略它。它真的是一个包装库的一系列JSON库,你不一定需要。删除后,您可以为Jackson 2.2.1库和JAX-RS提供程序添加依赖关系:

<dependency>
    <groupId>com.fasterxml.jackson.jaxrs</groupId>
    <artifactId>jackson-jaxrs-json-provider</artifactId>
    <version>2.2.1</version>
</dependency>

注意,删除jersey-json后,您不再有Stax2,Jettison或JAXB提供程序。如果你需要那些,那么你将不得不手动定位和添加它们的依赖。

转载注明原文:泽西杰克逊和codehaus vs. fasterxml - 代码日志