I got the below exception in DavX5 and seems it's from ez-vcard library.
EXCEPTION
java.lang.NoClassDefFoundError: ezvcard.io.scribe.ScribeIndex
at ezvcard.io.StreamWriter.<init>(StreamWriter.java:4)
at ezvcard.io.text.VCardWriter.<init>(VCardWriter.java:1)
at at.bitfire.vcard4android.ContactWriter.writeCard(ContactWriter.kt:59)
at at.bitfire.vcard4android.Contact.writeVCard(Contact.kt:19)
at at.bitfire.davdroid.syncadapter.ContactsSyncManager$generateUpload$1.invoke(ContactsSyncManager.kt:11)
at at.bitfire.davdroid.syncadapter.ContactsSyncManager$generateUpload$1.invoke(ContactsSyncManager.kt:1)
at at.bitfire.davdroid.syncadapter.SyncManager.localExceptionContext(SyncManager.kt:8)
at at.bitfire.davdroid.syncadapter.ContactsSyncManager.generateUpload(ContactsSyncManager.kt:2)
at at.bitfire.davdroid.syncadapter.ContactsSyncManager.generateUpload(ContactsSyncManager.kt:1)
at at.bitfire.davdroid.syncadapter.SyncManager$uploadDirty$2.invoke(SyncManager.kt:3)
at at.bitfire.davdroid.syncadapter.SyncManager$uploadDirty$2.invoke(SyncManager.kt:1)
at at.bitfire.davdroid.syncadapter.SyncManager.remoteExceptionContext(SyncManager.kt:1)
at at.bitfire.davdroid.syncadapter.SyncManager.uploadDirty(SyncManager.kt:12)
at at.bitfire.davdroid.syncadapter.SyncManager$uploadDirty$1$1$1.invoke(SyncManager.kt:2)
at at.bitfire.davdroid.syncadapter.SyncManager$uploadDirty$1$1$1.invoke(SyncManager.kt:1)
at at.bitfire.davdroid.syncadapter.SyncManager.localExceptionContext(SyncManager.kt:8)
at at.bitfire.davdroid.syncadapter.SyncManager$uploadDirty$1$1.invokeSuspend(SyncManager.kt:21)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:9)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:111)
at kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.common.kt:143)
at kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source:105)
at kotlinx.coroutines.BuildersKt.runBlocking$default(Unknown Source:3)
at at.bitfire.davdroid.syncadapter.SyncManager.uploadDirty(SyncManager.kt:2)
at at.bitfire.davdroid.syncadapter.ContactsSyncManager.uploadDirty(ContactsSyncManager.kt:113)
at at.bitfire.davdroid.syncadapter.SyncManager$performSync$1.invoke(SyncManager.kt:10)
at at.bitfire.davdroid.syncadapter.SyncManager$performSync$1.invoke(SyncManager.kt:1)
at at.bitfire.davdroid.syncadapter.SyncManager.unwrapExceptions(SyncManager.kt:2)
at at.bitfire.davdroid.syncadapter.SyncManager.performSync(SyncManager.kt:20)
at at.bitfire.davdroid.syncadapter.ContactSyncer.sync(ContactSyncer.kt:221)
at at.bitfire.davdroid.syncadapter.Syncer.onPerformSync(Syncer.kt:122)
at at.bitfire.davdroid.syncadapter.SyncWorker$doWork$2$1$1.invoke(SyncWorker.kt:3)
at at.bitfire.davdroid.syncadapter.SyncWorker$doWork$2$1$1.invoke(SyncWorker.kt:1)
at kotlinx.coroutines.InterruptibleKt$runInterruptible$2.invokeSuspend(Interruptible.kt:59)
at kotlinx.coroutines.InterruptibleKt$runInterruptible$2.invoke(Interruptible.kt:13)
at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:5)
at kotlinx.coroutines.BuildersKt.withContext(Unknown Source:41)
at kotlinx.coroutines.InterruptibleKt.runInterruptible$default(Interruptible.kt:9)
at at.bitfire.davdroid.syncadapter.SyncWorker$doWork$2.invokeSuspend(SyncWorker.kt:502)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:9)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:111)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)
at java.lang.Thread.run(Thread.java:1012)
Caused by: java.lang.NoSuchFieldError: No field emptyString of type Ljava/lang/String; in class Ljavax/xml/namespace/QName; or its superclasses (declaration of 'javax.xml.namespace.QName' appears in /apex/com.android.art/javalib/core-libart.jar)
at ezvcard.io.scribe.VCardPropertyScribe.<init>(VCardPropertyScribe.java:3)
at ezvcard.io.scribe.AddressScribe.<init>(AddressScribe.java:5)
at ezvcard.io.scribe.ScribeIndex.<clinit>(ScribeIndex.java:24)
at ezvcard.io.StreamWriter.<init>(StreamWriter.java:4)
at ezvcard.io.text.VCardWriter.<init>(VCardWriter.java:1)
at at.bitfire.vcard4android.ContactWriter.writeCard(ContactWriter.kt:59)
at at.bitfire.vcard4android.Contact.writeVCard(Contact.kt:19)
at at.bitfire.davdroid.syncadapter.ContactsSyncManager$generateUpload$1.invoke(ContactsSyncManager.kt:11)
at at.bitfire.davdroid.syncadapter.ContactsSyncManager$generateUpload$1.invoke(ContactsSyncManager.kt:1)
at at.bitfire.davdroid.syncadapter.SyncManager.localExceptionContext(SyncManager.kt:8)
at at.bitfire.davdroid.syncadapter.ContactsSyncManager.generateUpload(ContactsSyncManager.kt:2)
at at.bitfire.davdroid.syncadapter.ContactsSyncManager.generateUpload(ContactsSyncManager.kt:1)
at at.bitfire.davdroid.syncadapter.SyncManager$uploadDirty$3.invoke(SyncManager.kt:5)
at at.bitfire.davdroid.syncadapter.SyncManager$uploadDirty$3.invoke(SyncManager.kt:1)
at at.bitfire.davdroid.syncadapter.SyncManager.remoteExceptionContext(SyncManager.kt:1)
at at.bitfire.davdroid.syncadapter.SyncManager.uploadDirty(SyncManager.kt:15)
... 30 more
I got the below exception in DavX5 and seems it's from ez-vcard library.