NoClassDefFoundError:包含库时的com / squareup / javapoet / TypeName

时间:2018-04-03 19:37:43

标签: java android android-library annotation-processing

我一直在开发基于注释处理器的库。当我将它作为本地库运行时,它工作正常。例如

implementation project(':dialogboot-annotations')
annotationProcessor project(':dialogboot-compiler')    

但是在将其发布到jCenter之后。它看起来像

implementation 'com.masum.dialogboot:dialogboot-annotations:1.1.1'
annotationProcessor 'com.masum.dialogboot:dialogboot-compiler:1.1.1'

但是当我使用这个jCenter repo时,它会生成以下错误,但在本地它可以正常工作

  

错误:服务配置文件错误,或者抛出异常   构造Processor对象:javax.annotation.processing.Processor:   提供者dialogboot.compiler.DialogProcessor不能   实例化:java.lang.NoClassDefFoundError:   COM / squareup / javapoet /类型名

如果在jCenter中发布图书馆后遇到同样的问题,请帮助我。

1 个答案:

答案 0 :(得分:1)

我通过更改root-gradle依赖项中的android-maven-gradle-plugin版本 2.0 而不是 1.1.4 解决了我的问题

classpath 'com.github.dcendents:android-maven-gradle-plugin:2.0'