Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

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.

like image 955
cgr Avatar asked Jul 31 '15 22:07

cgr


2 Answers

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: Same fix for retrofit2 also

compile ('com.squareup.retrofit2:converter-simplexml:2.0.0-beta3'){
    exclude group: 'xpp3', module: 'xpp3'
    exclude group: 'stax', module: 'stax-api'
    exclude group: 'stax', module: 'stax'
}
like image 111
cgr Avatar answered Nov 04 '22 21:11

cgr


It is working with 2.0.0-beta3 as well.

// Retrofit XML convertidor
compile ('com.squareup.retrofit2:converter-simplexml:2.0.0-beta3'){
    exclude group: 'xpp3', module: 'xpp3'
    exclude group: 'stax', module: 'stax-api'
    exclude group: 'stax', module: 'stax'
}
like image 26
bheatcoker Avatar answered Nov 04 '22 22:11

bheatcoker