我使用Jersey 1.17.1和Jackson 2.2.1。澤西傑克遜和codehaus vs. fasterxml
傑克遜似乎將包裹從org.codehaus
切換到com.fasterxml
。我已經正確配置了所有代碼並使用了最新的傑克遜。然而,澤西隊似乎仍在拉攏org.codehaus.jackson
。有什麼方法可以緩解這種情況,還是應該堅持使用codehaus
包裹,直到球衣升級爲使用fasterxml
包裹爲止?
我使用Jersey 1.17.1和Jackson 2.2.1。澤西傑克遜和codehaus vs. fasterxml
傑克遜似乎將包裹從org.codehaus
切換到com.fasterxml
。我已經正確配置了所有代碼並使用了最新的傑克遜。然而,澤西隊似乎仍在拉攏org.codehaus.jackson
。有什麼方法可以緩解這種情況,還是應該堅持使用codehaus
包裹,直到球衣升級爲使用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庫的包裝庫。一旦取消,您可以爲傑克遜2.2.1庫和JAX-RS提供程序添加依賴關係:
<dependency>
<groupId>com.fasterxml.jackson.jaxrs</groupId>
<artifactId>jackson-jaxrs-json-provider</artifactId>
<version>2.2.1</version>
</dependency>
注意,與新澤西州的JSON刪除你不再有Stax2,拋棄,或JAXB提供商。如果您需要這些,那麼您將不得不手動定位並添加它們的依賴關係。
從Jackson 2.2開始,代碼位置是https://github.com/FasterXML/jackson-jaxrs-providers/blob/master/json/pom.xml。 – koppor