-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
IllegalAccessError: Class ref in pre-verified class resolved to unexpected implementation on Android 4.3.1 and Jackson 2.12.0 #3123
Comments
I don't know what causes this, although suggestions from earlier issues suggest it might use of So it might just be a limitation for use of Jackson with older versions of Android SDK at this point. Jackson 2.13 will require Java 8 baseline. |
Looks like https://developer.android.com/reference/kotlin/java/util/Objects Jackson-databind did use this method in one place in 2.11, but much more extensively in 2.12. I will add a note about this on 2.12 release notes: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.12 now. Also note that officially JDK 7 has been required since Jackson 2.8: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.8 |
I found not too many places where |
I was not aware of this being a compatibility concern so choice to use this method was for convenience, and not a conscious decision. But the way it turned out, I think, is that minimum baseline usable on Android was bumped from 18 to 19. What would be useful, however, would be some sort of test suite that could uncover such changes: something like |
Do you mean: as an unintentional side effect?
I totally agree. That would be very valuable. That is how I discovered the issue myself. I use Travis CI to execute instrumentation tests (running Android emulator, |
Correct, unintentional/unplanned change. |
Is my open source project, my open source CI configuration and the links enough information for you to set it up? |
That would be helpful for sure -- either me (if and when I have time), or perhaps someone else who would be interested in improving Android compatibility. I could ask on jackson-dev mailing list and twitter for collaborators. Just so that I won't become the main bottleneck. |
Sounds good to me. Feel free to ping me if I can be of help. |
+ Jackson does no longer support these Android versions. See: FasterXML/jackson-databind#3123 + Related: 6fad134.
+ Jackson does no longer support these Android versions. See: FasterXML/jackson-databind#3123 + Related to Jackson: fc8a602 + Related to BetterLinkMovementMethod: 6fad134.
+ Jackson does no longer support these Android versions. See: FasterXML/jackson-databind#3123 + Related to Jackson: fc8a602 + Related to BetterLinkMovementMethod: 6fad134.
+ Jackson does no longer support these Android versions. See: FasterXML/jackson-databind#3123 + Related to Jackson: fc8a602 + Related to BetterLinkMovementMethod: 6fad134.
Describe the bug
I discovered an
IllegalAccessError: Class ref in pre-verified class resolved to unexpected implementation
when I run this Android app in the following environment:system-images;android-18;google_apis;x86
, revision: 6DEBUG
build,RELEASE
build not tested yetcom.fasterxml.jackson.core:jackson-databind:2.12.0
Version information
com.fasterxml.jackson.core:jackson-databind:2.12.0 - 2.12.3
To Reproduce
./gradlew connectedAndroidTest
Observed behavior
Stacktrace
See:
if ((!Objects.equals(unwrapSingle, _unwrapSingle))
at jackson-databind/CollectionDeserializer.java#L198Expected behavior
Additional context
com.fasterxml.jackson.core:jackson-databind:2.11.3
is used.Related
The text was updated successfully, but these errors were encountered: