Tickaroo / tikxml

Modern XML Parser for Android
Apache License 2.0
423 stars 44 forks source link

Conflict with annotationProcessor 'com.tickaroo.tikxml:processor:0.8.13' #116

Open alex-podolian opened 5 years ago

alex-podolian commented 5 years ago

Error: error: cannot find symbol class BR It argues on Data Binding.

Here is my dependencies list:

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation files('libs/mail.jar')
    implementation files('libs/activation.jar')
    implementation('com.crashlytics.sdk.android:crashlytics:2.6.7@aar') {
        transitive = true
    }
    implementation 'com.google.android.gms:play-services-maps:16.0.0'
    implementation 'com.google.android.gms:play-services-places:16.0.0'
    implementation 'com.google.android.gms:play-services-location:16.0.0'
    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.android.support:design:28.0.0'
    implementation 'com.android.support:multidex:1.0.3'
    implementation 'com.android.support:support-v4:28.0.0'
    implementation 'com.android.support:cardview-v7:28.0.0'
    implementation 'com.google.android:flexbox:0.1.2'
    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
    implementation 'com.yqritc:recyclerview-flexibledivider:1.4.0'
    implementation 'com.jakewharton:butterknife:8.8.1'
    implementation 'com.squareup.retrofit2:retrofit:2.4.0'
    implementation 'com.squareup.retrofit2:converter-gson:2.4.0'
    implementation 'com.squareup.retrofit2:adapter-rxjava2:2.3.0'
    implementation 'com.squareup.okhttp3:okhttp:3.11.0'
    implementation 'com.squareup.okhttp3:logging-interceptor:3.11.0'
    implementation 'com.squareup.okhttp3:okhttp-urlconnection:3.11.0'
    implementation 'io.reactivex.rxjava2:rxandroid:2.0.1'
    implementation 'io.reactivex.rxjava2:rxjava:2.1.7'
    implementation 'com.facebook.stetho:stetho:1.5.0'
    implementation 'com.facebook.stetho:stetho-okhttp3:1.5.0'
    implementation 'me.ydcool.lib:qrmodule:1.0'
    implementation 'com.google.firebase:firebase-messaging:17.3.4'
    implementation 'com.google.firebase:firebase-core:16.0.6'
    implementation 'com.github.simbiose:Encryption:2.0.0'
    implementation 'org.greenrobot:eventbus:3.0.0'
    implementation 'com.github.bumptech.glide:glide:4.7.1'
    implementation 'q.rorbin:badgeview:1.1.2'
    implementation 'jp.wasabeef:recyclerview-animators:2.2.7'
    annotationProcessor 'com.github.bumptech.glide:compiler:4.6.1'
    annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'

    implementation 'com.tickaroo.tikxml:retrofit-converter:0.8.13'
    implementation 'com.tickaroo.tikxml:annotation:0.8.13'
    implementation 'com.tickaroo.tikxml:core:0.8.13'
    annotationProcessor 'com.tickaroo.tikxml:processor:0.8.13'
}

buildscript {
    repositories {
        maven { url 'https://maven.fabric.io/public' }
    }

    dependencies {
        classpath 'io.fabric.tools:gradle:1.27.0'
    }
}

apply plugin: 'com.android.application'
apply plugin: 'io.fabric'

repositories {
    maven { url 'https://maven.fabric.io/public' }
}

apply plugin: 'com.google.gms.google-services'

Here is my build.gradle:

buildscript {
    repositories {
        jcenter()
        maven {
            url 'https://maven.google.com/'
            name 'Google'
        }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.2.1'
        classpath 'com.google.gms:google-services:4.2.0'
    }
}

allprojects {
    repositories {
        google()
        jcenter()
        mavenCentral()
        maven {
            url 'http://oss.sonatype.org/content/repositories/snapshots'
        }
        maven { url 'https://jitpack.io' }
        maven {
            url "https://maven.google.com"
        }
        maven {
            url 'https://maven.google.com/'
            name 'Google'
        }
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

Here is my gradle.properties:

org.gradle.daemon=true
org.gradle.configureondemand=true
org.gradle.parallel=true
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
android.buildCacheDir=/home/alex/AndroidStudioProjects/android_cache

Without annotationProcessor 'com.tickaroo.tikxml:processor:0.8.13' everything is fine. But than it argues on TypeAdapter due to lack of annotationProcessor 'com.tickaroo.tikxml:processor:0.8.13'.

I was searching for solution but didn't find anything... Pls help.

sockeqwe commented 5 years ago

Can you show me the full compilation output? Most likely one of the annotation orocessors (tikxml or databinding) have outputted an error message but it might have been well hidden in the rest of other compilation errors ...

Alex Podolian notifications@github.com schrieb am Sa., 29. Dez. 2018, 14:46:

Error: error: cannot find symbol class BR It argues on Data Binding.

Here is my dependencies list:

dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') implementation files('libs/mail.jar') implementation files('libs/activation.jar') implementation('com.crashlytics.sdk.android:crashlytics:2.6.7@aar') { transitive = true } implementation 'com.google.android.gms:play-services-maps:16.0.0' implementation 'com.google.android.gms:play-services-places:16.0.0' implementation 'com.google.android.gms:play-services-location:16.0.0' implementation 'com.android.support:appcompat-v7:28.0.0' implementation 'com.android.support:design:28.0.0' implementation 'com.android.support:multidex:1.0.3' implementation 'com.android.support:support-v4:28.0.0' implementation 'com.android.support:cardview-v7:28.0.0' implementation 'com.google.android:flexbox:0.1.2' implementation 'com.android.support.constraint:constraint-layout:1.1.3' implementation 'com.yqritc:recyclerview-flexibledivider:1.4.0' implementation 'com.jakewharton:butterknife:8.8.1' implementation 'com.squareup.retrofit2:retrofit:2.4.0' implementation 'com.squareup.retrofit2:converter-gson:2.4.0' implementation 'com.squareup.retrofit2:adapter-rxjava2:2.3.0' implementation 'com.squareup.okhttp3:okhttp:3.11.0' implementation 'com.squareup.okhttp3:logging-interceptor:3.11.0' implementation 'com.squareup.okhttp3:okhttp-urlconnection:3.11.0' implementation 'io.reactivex.rxjava2:rxandroid:2.0.1' implementation 'io.reactivex.rxjava2:rxjava:2.1.7' implementation 'com.facebook.stetho:stetho:1.5.0' implementation 'com.facebook.stetho:stetho-okhttp3:1.5.0' implementation 'me.ydcool.lib:qrmodule:1.0' implementation 'com.google.firebase:firebase-messaging:17.3.4' implementation 'com.google.firebase:firebase-core:16.0.6' implementation 'com.github.simbiose:Encryption:2.0.0' implementation 'org.greenrobot:eventbus:3.0.0' implementation 'com.github.bumptech.glide:glide:4.7.1' implementation 'q.rorbin:badgeview:1.1.2' implementation 'jp.wasabeef:recyclerview-animators:2.2.7' annotationProcessor 'com.github.bumptech.glide:compiler:4.6.1' annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'

implementation 'com.tickaroo.tikxml:retrofit-converter:0.8.13'
implementation 'com.tickaroo.tikxml:annotation:0.8.13'
implementation 'com.tickaroo.tikxml:core:0.8.13'
annotationProcessor 'com.tickaroo.tikxml:processor:0.8.13'
annotationProcessor 'com.android.databinding:compiler:3.2.0-alpha10'

}

buildscript { repositories { maven { url 'https://maven.fabric.io/public' } }

dependencies {
    classpath 'io.fabric.tools:gradle:1.27.0'
}

}

apply plugin: 'com.android.application' apply plugin: 'io.fabric'

repositories { maven { url 'https://maven.fabric.io/public' } }

apply plugin: 'com.google.gms.google-services'

Here is my build.gradle:

buildscript { repositories { jcenter() maven { url 'https://maven.google.com/' name 'Google' } } dependencies { classpath 'com.android.tools.build:gradle:3.2.1' classpath 'com.google.gms:google-services:4.2.0' } }

allprojects { repositories { google() jcenter() mavenCentral() maven { url 'http://oss.sonatype.org/content/repositories/snapshots' } maven { url 'https://jitpack.io' } maven { url "https://maven.google.com" } maven { url 'https://maven.google.com/' name 'Google' } } }

task clean(type: Delete) { delete rootProject.buildDir }

Here is my gradle.properties: org.gradle.daemon=true org.gradle.configureondemand=true org.gradle.parallel=true org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 android.buildCacheDir=/home/alex/AndroidStudioProjects/Rodnik_android_cache

Without annotationProcessor 'com.tickaroo.tikxml:processor:0.8.13' everything is fine. But than it argues on ConvertType due to lack of annotationProcessor 'com.tickaroo.tikxml:processor:0.8.13'.

I was searching for solution but didn't find anything... Pls help.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/Tickaroo/tikxml/issues/116, or mute the thread https://github.com/notifications/unsubscribe-auth/AAjnroLZ_LVG2aLnKp0cL0nmdithUgvfks5u93I7gaJpZM4ZklIu .

alex-podolian commented 5 years ago

/myPath/AndroidStudioProjects/MyApp 

app/build/generated/data_binding_base_class_source_out/debug/dataBindingGenBaseClassesDebug/out 
com/myapp/databinding/ItemHeaderCheckStatisticBinding.java  
error: cannot find symbol class DataBindingComponent    
error: cannot find symbol class DataBindingComponent    
error: cannot find symbol class DataBindingComponent    
error: cannot find symbol class DataBindingComponent    
com/myapp/databinding/ItemCheck2Binding.java    
error: cannot find symbol class DataBindingComponent    
error: cannot find symbol class DataBindingComponent    
com/myapp/databinding/FragmentFuels2Binding.java    
error: cannot find symbol class DataBindingComponent    
error: cannot find symbol class DataBindingComponent    
com/myapp/databinding/ElementErrorScreenBinding.java    
error: cannot find symbol class DataBindingComponent    
error: cannot find symbol class DataBindingComponent    
com/myapp/databinding/ItemHeaderGoodsStatisticsBinding.java 
com/myapp/databinding/ItemPurchase2Binding.java 
com/myapp/databinding/FragmentBillings2Binding.java 
com/myapp/databinding/ElementFilterByDateBinding.java   
com/myapp/databinding/FragmentGoods2Binding.java    
com/myapp/databinding/ItemCheckPurchase2Binding.java    
com/myapp/databinding/FragmentChecksFragment2Binding.java   
com/myapp/databinding/ActivityMaintenanceBinding.java   
com/myapp/databinding/ElementMaintenanceFormBinding.java    
com/myapp/databinding/ActivityResetPasswordBinding.java 
com/myapp/databinding/FragmentSecondStepResetPasswordBinding.java   
com/myapp/databinding/FragmentFirstStepResetPasswordBinding.java    
com/myapp/databinding/FragmentThirdStepResetPasswordBinding.java    
com/myapp/databinding/FragmentResetPasswordSuccessBinding.java  
com/myapp/databinding/ActivityChangePasswordBinding.java    
com/myapp/databinding/ActivityUserDataBinding.java  
com/myapp/databinding/ElementProfileHeaderBinding.java  
com/myapp/databinding/ActivityProfileEditDarkBinding.java   
com/myapp/databinding/ActivityProfileEditBinding.java   
com/myapp/databinding/ActivityServiceStationsMapBinding.java

app/src/main/java   
com/myapp/ui/profile/reset_password/ChangePasswordViewModel.java    
error: cannot find symbol class BR  
com/myapp/ui/profile/edit/ProfileEditViewModel.java 
error: cannot find symbol class BR  

checkType is a boxed field but needs to be un-boxed to execute (check,checkType). This may cause NPE so Data Binding will safely unbox it. You can change the expression and explicitly wrap checkType with safeUnbox() to prevent the warning  
isShowEmptyFieldError is a boxed field but needs to be un-boxed to execute app:errorEmptyFieldVisibility. This may cause NPE so Data Binding will safely unbox it. You can change the expression and explicitly wrap isShowEmptyFieldError with safeUnbox() to prevent the warning  
bonusType is a boxed field but needs to be un-boxed to execute (checkItem,bonusType). This may cause NPE so Data Binding will safely unbox it. You can change the expression and explicitly wrap bonusType with safeUnbox() to prevent the warning  
isShowEmptyFieldError is a boxed field but needs to be un-boxed to execute app:errorEmptyFieldVisibility. This may cause NPE so Data Binding will safely unbox it. You can change the expression and explicitly wrap isShowEmptyFieldError with safeUnbox() to prevent the warning  
isBottomSpaceVisible is a boxed field but needs to be un-boxed to execute isBottomSpaceVisible ? View.VISIBLE : View.GONE. This may cause NPE so Data Binding will safely unbox it. You can change the expression and explicitly wrap isBottomSpaceVisible with safeUnbox() to prevent the warning  
isOnlyFuelShow is a boxed field but needs to be un-boxed to execute isOnlyFuelShow ? checkStatistics.fuelsSpentSum : checkStatistics.totalSpentSum. This may cause NPE so Data Binding will safely unbox it. You can change the expression and explicitly wrap isOnlyFuelShow with safeUnbox() to prevent the warning   
isFirstItem is a boxed field but needs to be un-boxed to execute isFirstItem ? View.VISIBLE : View.GONE. This may cause NPE so Data Binding will safely unbox it. You can change the expression and explicitly wrap isFirstItem with safeUnbox() to prevent the warning 
isFirstElement is a boxed field but needs to be un-boxed to execute isFirstElement ? View.VISIBLE : View.GONE. This may cause NPE so Data Binding will safely unbox it. You can change the expression and explicitly wrap isFirstElement with safeUnbox() to prevent the warning    
iNoles commented 5 years ago

/myPath/AndroidStudioProjects/MyApp   

app/build/generated/data_binding_base_class_source_out/debug/dataBindingGenBaseClassesDebug/out   
com/myapp/databinding/ItemHeaderCheckStatisticBinding.java    
error: cannot find symbol class DataBindingComponent  
error: cannot find symbol class DataBindingComponent  
error: cannot find symbol class DataBindingComponent  
error: cannot find symbol class DataBindingComponent  
com/myapp/databinding/ItemCheck2Binding.java  
error: cannot find symbol class DataBindingComponent  
error: cannot find symbol class DataBindingComponent  
com/myapp/databinding/FragmentFuels2Binding.java  
error: cannot find symbol class DataBindingComponent  
error: cannot find symbol class DataBindingComponent  
com/myapp/databinding/ElementErrorScreenBinding.java  
error: cannot find symbol class DataBindingComponent  
error: cannot find symbol class DataBindingComponent  
com/myapp/databinding/ItemHeaderGoodsStatisticsBinding.java   
com/myapp/databinding/ItemPurchase2Binding.java   
com/myapp/databinding/FragmentBillings2Binding.java   
com/myapp/databinding/ElementFilterByDateBinding.java 
com/myapp/databinding/FragmentGoods2Binding.java  
com/myapp/databinding/ItemCheckPurchase2Binding.java  
com/myapp/databinding/FragmentChecksFragment2Binding.java 
com/myapp/databinding/ActivityMaintenanceBinding.java 
com/myapp/databinding/ElementMaintenanceFormBinding.java  
com/myapp/databinding/ActivityResetPasswordBinding.java   
com/myapp/databinding/FragmentSecondStepResetPasswordBinding.java 
com/myapp/databinding/FragmentFirstStepResetPasswordBinding.java  
com/myapp/databinding/FragmentThirdStepResetPasswordBinding.java  
com/myapp/databinding/FragmentResetPasswordSuccessBinding.java    
com/myapp/databinding/ActivityChangePasswordBinding.java  
com/myapp/databinding/ActivityUserDataBinding.java    
com/myapp/databinding/ElementProfileHeaderBinding.java    
com/myapp/databinding/ActivityProfileEditDarkBinding.java 
com/myapp/databinding/ActivityProfileEditBinding.java 
com/myapp/databinding/ActivityServiceStationsMapBinding.java

app/src/main/java 
com/myapp/ui/profile/reset_password/ChangePasswordViewModel.java  
error: cannot find symbol class BR    
com/myapp/ui/profile/edit/ProfileEditViewModel.java   
error: cannot find symbol class BR    

checkType is a boxed field but needs to be un-boxed to execute (check,checkType). This may cause NPE so Data Binding will safely unbox it. You can change the expression and explicitly wrap checkType with safeUnbox() to prevent the warning    
isShowEmptyFieldError is a boxed field but needs to be un-boxed to execute app:errorEmptyFieldVisibility. This may cause NPE so Data Binding will safely unbox it. You can change the expression and explicitly wrap isShowEmptyFieldError with safeUnbox() to prevent the warning    
bonusType is a boxed field but needs to be un-boxed to execute (checkItem,bonusType). This may cause NPE so Data Binding will safely unbox it. You can change the expression and explicitly wrap bonusType with safeUnbox() to prevent the warning    
isShowEmptyFieldError is a boxed field but needs to be un-boxed to execute app:errorEmptyFieldVisibility. This may cause NPE so Data Binding will safely unbox it. You can change the expression and explicitly wrap isShowEmptyFieldError with safeUnbox() to prevent the warning    
isBottomSpaceVisible is a boxed field but needs to be un-boxed to execute isBottomSpaceVisible ? View.VISIBLE : View.GONE. This may cause NPE so Data Binding will safely unbox it. You can change the expression and explicitly wrap isBottomSpaceVisible with safeUnbox() to prevent the warning    
isOnlyFuelShow is a boxed field but needs to be un-boxed to execute isOnlyFuelShow ? checkStatistics.fuelsSpentSum : checkStatistics.totalSpentSum. This may cause NPE so Data Binding will safely unbox it. You can change the expression and explicitly wrap isOnlyFuelShow with safeUnbox() to prevent the warning 
isFirstItem is a boxed field but needs to be un-boxed to execute isFirstItem ? View.VISIBLE : View.GONE. This may cause NPE so Data Binding will safely unbox it. You can change the expression and explicitly wrap isFirstItem with safeUnbox() to prevent the warning   
isFirstElement is a boxed field but needs to be un-boxed to execute isFirstElement ? View.VISIBLE : View.GONE. This may cause NPE so Data Binding will safely unbox it. You can change the expression and explicitly wrap isFirstElement with safeUnbox() to prevent the warning  

That is related to Android DataBinding.

alex-podolian commented 5 years ago

/myPath/AndroidStudioProjects/MyApp 

app/build/generated/data_binding_base_class_source_out/debug/dataBindingGenBaseClassesDebug/out 
com/myapp/databinding/ItemHeaderCheckStatisticBinding.java  
error: cannot find symbol class DataBindingComponent    
error: cannot find symbol class DataBindingComponent    
error: cannot find symbol class DataBindingComponent    
error: cannot find symbol class DataBindingComponent    
com/myapp/databinding/ItemCheck2Binding.java    
error: cannot find symbol class DataBindingComponent    
error: cannot find symbol class DataBindingComponent    
com/myapp/databinding/FragmentFuels2Binding.java    
error: cannot find symbol class DataBindingComponent    
error: cannot find symbol class DataBindingComponent    
com/myapp/databinding/ElementErrorScreenBinding.java    
error: cannot find symbol class DataBindingComponent    
error: cannot find symbol class DataBindingComponent    
com/myapp/databinding/ItemHeaderGoodsStatisticsBinding.java 
com/myapp/databinding/ItemPurchase2Binding.java 
com/myapp/databinding/FragmentBillings2Binding.java 
com/myapp/databinding/ElementFilterByDateBinding.java   
com/myapp/databinding/FragmentGoods2Binding.java    
com/myapp/databinding/ItemCheckPurchase2Binding.java    
com/myapp/databinding/FragmentChecksFragment2Binding.java   
com/myapp/databinding/ActivityMaintenanceBinding.java   
com/myapp/databinding/ElementMaintenanceFormBinding.java    
com/myapp/databinding/ActivityResetPasswordBinding.java 
com/myapp/databinding/FragmentSecondStepResetPasswordBinding.java   
com/myapp/databinding/FragmentFirstStepResetPasswordBinding.java    
com/myapp/databinding/FragmentThirdStepResetPasswordBinding.java    
com/myapp/databinding/FragmentResetPasswordSuccessBinding.java  
com/myapp/databinding/ActivityChangePasswordBinding.java    
com/myapp/databinding/ActivityUserDataBinding.java  
com/myapp/databinding/ElementProfileHeaderBinding.java  
com/myapp/databinding/ActivityProfileEditDarkBinding.java   
com/myapp/databinding/ActivityProfileEditBinding.java   
com/myapp/databinding/ActivityServiceStationsMapBinding.java

app/src/main/java   
com/myapp/ui/profile/reset_password/ChangePasswordViewModel.java    
error: cannot find symbol class BR  
com/myapp/ui/profile/edit/ProfileEditViewModel.java 
error: cannot find symbol class BR  

checkType is a boxed field but needs to be un-boxed to execute (check,checkType). This may cause NPE so Data Binding will safely unbox it. You can change the expression and explicitly wrap checkType with safeUnbox() to prevent the warning  
isShowEmptyFieldError is a boxed field but needs to be un-boxed to execute app:errorEmptyFieldVisibility. This may cause NPE so Data Binding will safely unbox it. You can change the expression and explicitly wrap isShowEmptyFieldError with safeUnbox() to prevent the warning  
bonusType is a boxed field but needs to be un-boxed to execute (checkItem,bonusType). This may cause NPE so Data Binding will safely unbox it. You can change the expression and explicitly wrap bonusType with safeUnbox() to prevent the warning  
isShowEmptyFieldError is a boxed field but needs to be un-boxed to execute app:errorEmptyFieldVisibility. This may cause NPE so Data Binding will safely unbox it. You can change the expression and explicitly wrap isShowEmptyFieldError with safeUnbox() to prevent the warning  
isBottomSpaceVisible is a boxed field but needs to be un-boxed to execute isBottomSpaceVisible ? View.VISIBLE : View.GONE. This may cause NPE so Data Binding will safely unbox it. You can change the expression and explicitly wrap isBottomSpaceVisible with safeUnbox() to prevent the warning  
isOnlyFuelShow is a boxed field but needs to be un-boxed to execute isOnlyFuelShow ? checkStatistics.fuelsSpentSum : checkStatistics.totalSpentSum. This may cause NPE so Data Binding will safely unbox it. You can change the expression and explicitly wrap isOnlyFuelShow with safeUnbox() to prevent the warning   
isFirstItem is a boxed field but needs to be un-boxed to execute isFirstItem ? View.VISIBLE : View.GONE. This may cause NPE so Data Binding will safely unbox it. You can change the expression and explicitly wrap isFirstItem with safeUnbox() to prevent the warning 
isFirstElement is a boxed field but needs to be un-boxed to execute isFirstElement ? View.VISIBLE : View.GONE. This may cause NPE so Data Binding will safely unbox it. You can change the expression and explicitly wrap isFirstElement with safeUnbox() to prevent the warning    

That is related to Android DataBinding.

I can see that on my own. But without annotationProcessor 'com.tickaroo.tikxml:processor:0.8.13' everything is fine. The only conclusion is that somehow tikxml annotation processor conflitcs with databinding.

iNoles commented 5 years ago

you should get gradle errors for databinding. When Databinding's Generator occurs with errors, BR wouldn't exists. I noticed you have a lot of boxed field warnings.

sockeqwe commented 5 years ago

What is class class BR?

sockeqwe commented 5 years ago

I'm pretty sure you have the following problem:

  1. You have an error with TikXml and TikXml annotation processor writes an error message. However, you don't see it in the output because there is a limit of 100 error messages (default value of java compiler).
  2. Since TikXml has an error, compilation basically stops except that other annotation processor like Databinding contiues to process annotations. While Datababinding is doing so, Databinding also produces error messages (because some classes are not compiled for example because compilation stopped because of TikXml reporting an error before). Since Databinding produces more than 100 error messages you only see databinding error messages but not the root cause: the TikXml annotation processor error message. This is a known issue with default error message limit of 100.

Solution: Set the error message limit to a much higher number, i.e. 10.000. With gradle you can do that like that:

allprojects {
  gradle.projectsEvaluated {
    tasks.withType(JavaCompile) {
        options.compilerArgs << "-Xmaxerrs" << "10000"
    }
  }
}

Then you see all error messages incl. the root cause: the error message from TikXml annotation processor.

More details here:

https://stackoverflow.com/questions/3115537/java-compilation-errors-limited-to-100/35707023#35707023

alex-podolian commented 5 years ago

I have changed all implementations to latest snapshot and it worked!

implementation 'com.tickaroo.tikxml:retrofit-converter:0.8.16-SNAPSHOT'
implementation 'com.tickaroo.tikxml:annotation:0.8.16-SNAPSHOT'
implementation 'com.tickaroo.tikxml:core:0.8.16-SNAPSHOT'
annotationProcessor 'com.tickaroo.tikxml:processor:0.8.16-SNAPSHOT'

But now there is a problem with TypeAdapter when I'm trying to send simple request via retrofit2.

01-03 15:28:35.240 14473-14473/com.myapp W/System.err: java.lang.RuntimeException: Unable to convert com.myapp.data.net.rest.request.post_auth_request.PostAuthRequestEnvelope@5962e2b to RequestBody
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at retrofit2.ParameterHandler$Body.apply(ParameterHandler.java:357)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at retrofit2.ServiceMethod.toCall(ServiceMethod.java:110)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at retrofit2.OkHttpCall.createRawCall(OkHttpCall.java:184)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at retrofit2.OkHttpCall.execute(OkHttpCall.java:167)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at retrofit2.adapter.rxjava2.CallExecuteObservable.subscribeActual(CallExecuteObservable.java:41)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at io.reactivex.Observable.subscribe(Observable.java:10981)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at io.reactivex.internal.operators.observable.ObservableSubscribeOn$SubscribeTask.run(ObservableSubscribeOn.java:96)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at io.reactivex.internal.schedulers.ScheduledDirectTask.call(ScheduledDirectTask.java:38)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at io.reactivex.internal.schedulers.ScheduledDirectTask.call(ScheduledDirectTask.java:26)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at java.util.concurrent.FutureTask.run(FutureTask.java:237)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at java.lang.Thread.run(Thread.java:818)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err: Caused by: com.tickaroo.tikxml.TypeAdapterNotFoundException: No TypeAdapter for class com.myapp.data.net.rest.request.post_auth_request.PostAuthRequestEnvelope found. Expected name of the type adapter is com.myapp.data.net.rest.request.post_auth_request.PostAuthRequestEnvelope$$TypeAdapter
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at com.tickaroo.tikxml.TypeAdapters.get(TypeAdapters.java:112)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at com.tickaroo.tikxml.TikXmlConfig.getTypeAdapter(TikXmlConfig.java:85)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at com.tickaroo.tikxml.TikXml.write(TikXml.java:128)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at com.tickaroo.tikxml.TikXml.write(TikXml.java:121)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at com.tickaroo.tikxml.retrofit.TikXmlRequestBodyConverter.convert(TikXmlRequestBodyConverter.java:45)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at com.tickaroo.tikxml.retrofit.TikXmlRequestBodyConverter.convert(TikXmlRequestBodyConverter.java:34)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at retrofit2.ParameterHandler$Body.apply(ParameterHandler.java:355)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:  ... 12 more
01-03 15:28:35.250 14473-14473/com.myapp W/System.err: Caused by: java.lang.ClassNotFoundException: com.myapp.data.net.rest.request.post_auth_request.PostAuthRequestEnvelope$$TypeAdapter
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at java.lang.Class.classForName(Native Method)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at java.lang.Class.forName(Class.java:308)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at java.lang.Class.forName(Class.java:272)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at com.tickaroo.tikxml.TypeAdapters.get(TypeAdapters.java:88)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:  ... 18 more
01-03 15:28:35.250 14473-14473/com.myapp W/System.err: Caused by: java.lang.ClassNotFoundException: Didn't find class "com.myapp.data.net.rest.request.post_auth_request.PostAuthRequestEnvelope$$TypeAdapter" on path: DexPathList[[zip file "/data/app/com.myapp-2/base.apk", zip file "/data/app/com.myapp-2/split_lib_dependencies_apk.apk", zip file "/data/app/com.myapp-2/split_lib_slice_0_apk.apk", zip file "/data/app/com.myapp-2/split_lib_slice_1_apk.apk", zip file "/data/app/com.myapp-2/split_lib_slice_2_apk.apk", zip file "/data/app/com.myapp-2/split_lib_slice_3_apk.apk", zip file "/data/app/com.myapp-2/split_lib_slice_4_apk.apk", zip file "/data/app/com.myapp-2/split_lib_slice_5_apk.apk", zip file "/data/app/com.myapp-2/split_lib_slice_6_apk.apk", zip file "/data/app/com.myapp-2/split_lib_slice_7_apk.apk", zip file "/data/app/com.myapp-2/split_lib_slice_8_apk.apk", zip file "/data/app/com.myapp-2/split_lib_slice_9_apk.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:     at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:  ... 22 more
01-03 15:28:35.250 14473-14473/com.myapp W/System.err:  Suppressed: java.lang.ClassNotFoundException: com.myapp.data.net.rest.request.post_auth_request.PostAuthRequestEnvelope$$TypeAdapter
01-03 15:28:35.260 14473-14473/com.myapp W/System.err:     at java.lang.Class.classForName(Native Method)
01-03 15:28:35.260 14473-14473/com.myapp W/System.err:     at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
01-03 15:28:35.260 14473-14473/com.myapp W/System.err:     at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
01-03 15:28:35.260 14473-14473/com.myapp W/System.err:     at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
01-03 15:28:35.260 14473-14473/com.myapp W/System.err:      ... 23 more
01-03 15:28:35.260 14473-14473/com.myapp W/System.err:  Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available
01-03 15:28:35.260 14473-14473/com.myapp E/<-- myappApp -->: Unable to convert com.myapp.data.net.rest.request.post_auth_request.PostAuthRequestEnvelope@5962e2b to RequestBody
    java.lang.RuntimeException: Unable to convert com.myapp.data.net.rest.request.post_auth_request.PostAuthRequestEnvelope@5962e2b to RequestBody
        at retrofit2.ParameterHandler$Body.apply(ParameterHandler.java:357)
        at retrofit2.ServiceMethod.toCall(ServiceMethod.java:110)
        at retrofit2.OkHttpCall.createRawCall(OkHttpCall.java:184)
        at retrofit2.OkHttpCall.execute(OkHttpCall.java:167)
        at retrofit2.adapter.rxjava2.CallExecuteObservable.subscribeActual(CallExecuteObservable.java:41)
        at io.reactivex.Observable.subscribe(Observable.java:10981)
        at io.reactivex.internal.operators.observable.ObservableSubscribeOn$SubscribeTask.run(ObservableSubscribeOn.java:96)
        at io.reactivex.internal.schedulers.ScheduledDirectTask.call(ScheduledDirectTask.java:38)
        at io.reactivex.internal.schedulers.ScheduledDirectTask.call(ScheduledDirectTask.java:26)
        at java.util.concurrent.FutureTask.run(FutureTask.java:237)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
        at java.lang.Thread.run(Thread.java:818)
     Caused by: com.tickaroo.tikxml.TypeAdapterNotFoundException: No TypeAdapter for class com.myapp.data.net.rest.request.post_auth_request.PostAuthRequestEnvelope found. Expected name of the type adapter is com.myapp.data.net.rest.request.post_auth_request.PostAuthRequestEnvelope$$TypeAdapter
        at com.tickaroo.tikxml.TypeAdapters.get(TypeAdapters.java:112)
        at com.tickaroo.tikxml.TikXmlConfig.getTypeAdapter(TikXmlConfig.java:85)
        at com.tickaroo.tikxml.TikXml.write(TikXml.java:128)
        at com.tickaroo.tikxml.TikXml.write(TikXml.java:121)
        at com.tickaroo.tikxml.retrofit.TikXmlRequestBodyConverter.convert(TikXmlRequestBodyConverter.java:45)
        at com.tickaroo.tikxml.retrofit.TikXmlRequestBodyConverter.convert(TikXmlRequestBodyConverter.java:34)
        at retrofit2.ParameterHandler$Body.apply(ParameterHandler.java:355)
        at retrofit2.ServiceMethod.toCall(ServiceMethod.java:110) 
        at retrofit2.OkHttpCall.createRawCall(OkHttpCall.java:184) 
        at retrofit2.OkHttpCall.execute(OkHttpCall.java:167) 
        at retrofit2.adapter.rxjava2.CallExecuteObservable.subscribeActual(CallExecuteObservable.java:41) 
        at io.reactivex.Observable.subscribe(Observable.java:10981) 
        at io.reactivex.internal.operators.observable.ObservableSubscribeOn$SubscribeTask.run(ObservableSubscribeOn.java:96) 
        at io.reactivex.internal.schedulers.ScheduledDirectTask.call(ScheduledDirectTask.java:38) 
        at io.reactivex.internal.schedulers.ScheduledDirectTask.call(ScheduledDirectTask.java:26) 
        at java.util.concurrent.FutureTask.run(FutureTask.java:237) 
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) 
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587) 
        at java.lang.Thread.run(Thread.java:818) 
     Caused by: java.lang.ClassNotFoundException: com.myapp.data.net.rest.request.post_auth_request.PostAuthRequestEnvelope$$TypeAdapter
        at java.lang.Class.classForName(Native Method)
        at java.lang.Class.forName(Class.java:308)
        at java.lang.Class.forName(Class.java:272)
        at com.tickaroo.tikxml.TypeAdapters.get(TypeAdapters.java:88)
        at com.tickaroo.tikxml.TikXmlConfig.getTypeAdapter(TikXmlConfig.java:85) 
        at com.tickaroo.tikxml.TikXml.write(TikXml.java:128) 
        at com.tickaroo.tikxml.TikXml.write(TikXml.java:121) 
        at com.tickaroo.tikxml.retrofit.TikXmlRequestBodyConverter.convert(TikXmlRequestBodyConverter.java:45) 
        at com.tickaroo.tikxml.retrofit.TikXmlRequestBodyConverter.convert(TikXmlRequestBodyConverter.java:34) 
        at retrofit2.ParameterHandler$Body.apply(ParameterHandler.java:355) 
        at retrofit2.ServiceMethod.toCall(ServiceMethod.java:110) 
        at retrofit2.OkHttpCall.createRawCall(OkHttpCall.java:184) 
        at retrofit2.OkHttpCall.execute(OkHttpCall.java:167) 
        at retrofit2.adapter.rxjava2.CallExecuteObservable.subscribeActual(CallExecuteObservable.java:41) 
        at io.reactivex.Observable.subscribe(Observable.java:10981) 
        at io.reactivex.internal.operators.observable.ObservableSubscribeOn$SubscribeTask.run(ObservableSubscribeOn.java:96) 
        at io.reactivex.internal.schedulers.ScheduledDirectTask.call(ScheduledDirectTask.java:38) 
        at io.reactivex.internal.schedulers.ScheduledDirectTask.call(ScheduledDirectTask.java:26) 
        at java.util.concurrent.FutureTask.run(FutureTask.java:237) 
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) 
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587) 
        at java.lang.Thread.run(Thread.java:818) 
     Caused by: java.lang.ClassNotFoundException: Didn't find class "com.myapp.data.net.rest.request.post_auth_request.PostAuthRequestEnvelope$$TypeAdapter" on path: DexPathList[[zip file "/data/app/com.myapp-2/base.apk", zip file "/data/app/com.myapp-2/split_lib_dependencies_apk.apk", zip file "/data/app/com.myapp-2/split_lib_slice_0_apk.apk", zip file "/data/app/com.myapp-2/split_lib_slice_1_apk.apk", zip file "/data/app/com.myapp-2/split_lib_slice_2_apk.apk", zip file "/data/app/com.myapp-2/split_lib_slice_3_apk.apk", zip file "/data/app/com.myapp-2/split_lib_slice_4_apk.apk", zip file "/data/app/com.myapp-2/split_lib_slice_5_apk.apk", zip file "/data/app/com.myapp-2/split_lib_slice_6_apk.apk", zip file "/data/app/com.myapp-2/split_lib_slice_7_apk.apk", zip file "/data/app/com.myapp-2/split_lib_slice_8_apk.apk", zip file "/data/app/com.myapp-2/split_lib_slice_9_apk.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
        at java.lang.Class.classForName(Native Method) 
        at java.lang.Class.forName(Class.java:308) 
        at java.lang.Class.forName(Class.java:272) 
        at com.tickaroo.tikxml.TypeAdapters.get(TypeAdapters.java:88) 
        at com.tickaroo.tikxml.TikXmlConfig.getTypeAdapter(TikXmlConfig.java:85) 
        at com.tickaroo.tikxml.TikXml.write(TikXml.java:128) 
        at com.tickaroo.tikxml.TikXml.write(TikXml.java:121) 
        at com.tickaroo.tikxml.retrofit.TikXmlRequestBodyConverter.convert(TikXmlRequestBodyConverter.java:45) 
        at com.tickaroo.tikxml.retrofit.TikXmlRequestBodyConverter.convert(TikXmlRequestBodyConverter.java:34) 
        at retrofit2.ParameterHandler$Body.apply(ParameterHandler.java:355) 
        at retrofit2.ServiceMethod.toCall(ServiceMethod.java:110) 
        at retrofit2.OkHttpCall.createRawCall(OkHttpCall.java:184) 
        at retrofit2.OkHttpCall.execute(OkHttpCall.java:167) 
        at retrofit2.adapter.rxjava2.CallExecuteObservable.subscribeActual(CallExecuteObservable.java:41) 
        at io.reactivex.Observable.subscribe(Observable.java:10981) 
        at io.reactivex.internal.operators.observable.ObservableSubscribeOn$SubscribeTask.run(ObservableSubscribeOn.java:96) 
        at io.reactivex.internal.schedulers.ScheduledDirectTask.call(ScheduledDirectTask.java:38) 
        at io.reactivex.internal.schedulers.ScheduledDirectTask.call(ScheduledDirectTask.java:26) 
        at java.util.concurrent.FutureTask.run(FutureTask.java:237) 
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) 
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587) 
        at java.lang.Thread.run(Thread.java:818) 
        Suppressed: java.lang.ClassNotFoundException: com.myapp.data.net.rest.request.post_auth_request.PostAuthRequestEnvelope$$TypeAdapter
        at java.lang.Class.classForName(Native Method)
        at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
        at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
                ... 23 more
     Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available

Here is my class:

@Xml
public class Envelope {

    @PropertyElement
    public String string;

    public String getString() {
        return string;
    }
    public void setString(String string) {
        this.string = string;
    }
}

What am I doing wrong?