cgr cgr - 3 months ago 44
Android Question

Build errors with XML to java object converter dependency in build.gradle for retrofit

I am trying to integrate XML to Java object converter into retrofit by following this https://futurestud.io/blog/retrofit-how-to-integrate-xml-converter/

I am getting build errors when I added dependency to my build.gradle.

This is what I've added in my build.gradle.
compile ('com.squareup.retrofit:converter-simplexml:1.9.0')

Error Report:

Information:Gradle tasks [:app:assembleDebug]
Warning:Dependency xpp3:xpp3:1.1.3.3 is ignored for debug as it may be conflicting with the internal version provided by Android.
In case of problem, please repackage it with jarjar to change the class packages
Warning:Dependency xpp3:xpp3:1.1.3.3 is ignored for release as it may be conflicting with the internal version provided by Android.
In case of problem, please repackage it with jarjar to change the class packages





SO I TRIED this

compile ('com.squareup.retrofit:converter-simplexml:1.9.0') {
exclude group: 'xpp3', module: 'xpp3'
}


Error report with this:

trouble processing "javax/xml/stream/events/StartElement.class":
Ill-advised or mistaken usage of a core class (java.* or javax.*)
....
...
Error:Execution failed for task ':app:preDexDebug'.
> com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command '/Library/Java/JavaVirtualMachines/jdk1.7.0_75.jdk/Contents/Home/bin/java'' finished with non-zero exit value 1


I tried gradle clean, build clean everything but of no use. Help me if you've any idea on it.

cgr cgr
Answer

I could resolve it. I had to exclude the following transitive dependencies: stax:stax-api, stax:stax.

compile ('com.squareup.retrofit:converter-simplexml:1.9.0') {
    exclude group: 'xpp3', module: 'xpp3'
    exclude group: 'stax', module: 'stax-api'
    exclude group: 'stax', module: 'stax'
}

Thanks!

UPDATE
This fix works and required for 2.0.0-beta3 too and for other versons too.