You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit f02867c
Browse filesBrowse the repository at this point in the historyBrowse files
> The library tested with each major JDK version (i.e: 11, 12, 13...) as well as some specific updates of LTS versions (i.e: 11.0.3 and above).
50
+
- Library requires the min JDK version `>= 17`.
51
+
> Version 11.x of the library uses [JVM-SDK-V2](http://commercetools.github.io/commercetools-sdk-java-v2) 20.x, which is based on Jackson 3. If your application uses JVM SDK 19.x or earlier (based on Jackson 2), or runs on JDK 11 to 16, use version 10.x of this library.
52
52
- A target commercetools project for syncing your source data to.
53
53
54
54
### Installation
@@ -62,26 +62,26 @@ Here are the most popular ones:
**Note**: To avoid `commercetools JVM SDK` libraries version mismatch between projects.
@@ -111,6 +111,7 @@ For Maven users, remove:
111
111
112
112
If you want to use a different `commercetools JVM SDK` version than the version used in this project.
113
113
, below you will find examples on how to exclude `commercetools JVM SDK` from commercetools-sync-java library. Beware that library might not work with the older `commercetools JVM SDK` versions.
114
+
In particular, version 10.x of the library doesn't work with JVM SDK 20.x, and version 11.x doesn't work with JVM SDK 19.x or earlier, because they are based on different major versions of Jackson.
[](https://search.maven.org/artifact/com.commercetools/commercetools-sync-java/10.0.7/jar)
[](https://search.maven.org/artifact/com.commercetools/commercetools-sync-java/11.0.0/jar)
> The library tested with each major JDK version (i.e: 8, 9, 10, 11, 12, 13...) as well as some specific updates of LTS versions (i.e: 8.0.192, 11.0.3).
31
+
- Library requires the min JDK version `>= 17`.
32
+
> Version 11.x of the library uses [JVM-SDK-V2](http://commercetools.github.io/commercetools-sdk-java-v2) 20.x, which is based on Jackson 3. If your application uses JVM SDK 19.x or earlier (based on Jackson 2), or runs on JDK 11 to 16, use version 10.x of this library.
33
33
- A target commercetools project for syncing your source data to.
34
34
35
35
### Installation
@@ -40,18 +40,18 @@ Here are the most popular ones:
This release makes the library compatible with commercetools JVM SDK 20.x and Jackson 3. Use version 11.x with JVM SDK 20.x, and keep using version 10.x with JVM SDK 19.x or earlier.
36
+
Unresolved references that version 10.x stored as custom objects keep working after the upgrade, because their JSON format didn't change.
37
+
38
+
- 🚧 **Breaking Changes** (4)
39
+
- Minimum Java 17 or above is required.
40
+
- The library now uses commercetools JVM SDK 20.x, which is based on Jackson 3 (package `tools.jackson`) instead of Jackson 2 (package `com.fasterxml.jackson`). Using version 10.x of the library with JVM SDK 20.x fails at runtime with a `NoSuchMethodError`.
41
+
- Public methods that take or return Jackson types now use the Jackson 3 types, for example `tools.jackson.databind.JsonNode` instead of `com.fasterxml.jackson.databind.JsonNode`. This affects `CustomValueConverter`, `AttributeUtils`, `ResourceIdentifierUtils.isReferenceOfType(JsonNode, String)` and the protected helpers of `BaseTransformServiceImpl`. If you call them, update your Jackson imports, see the [Jackson 3 migration guide](https://github.com/FasterXML/jackson/blob/main/jackson3/MIGRATING_TO_JACKSON_3.md).
42
+
- Jackson 3 exceptions are unchecked: `JacksonException`, which extends `RuntimeException`, replaces the checked `JsonProcessingException`. Code that catches `JsonProcessingException`, for example around the SDK's `JsonUtils.toJsonString`, no longer compiles. Catch `JacksonException` instead, or remove the `try`/`catch` if it was only there because the exception was checked.
43
+
- 🛠️ **Dependency Updates** (1)
44
+
-`commercetools-sdk-java-api` and `commercetools-http-client``19.3.0` -> `20.2.0`
0 commit comments