我有一个包含2个模块的maven项目。其中一个模块包含注释处理器。当我尝试将项目作为android项目的依赖项导入时,它将不会运行注释处理器。找不到生成的类文件。
implementation 'com.github.OmerUygurOzer.jet:jetcore:v1.0.9'
annotationProcessor'com.github.OmerUygurOzer.jet:jetprocessor:v1.0.9'
我从jitpack导入如上所示的项目。 jitpack上的构建成功,我也可以在本地访问代码,这意味着编译成功。但是应该生成的类不是。所以要么处理器没有触发,要么我生成的类在某种程度上位于错误的位置? android项目确实使用许多其他库与注释处理器,如Butterknife。所以这似乎只发生在这个特定的注释处理器上。
这是我得到的错误:
java.lang.ClassNotFoundException: Didn't find class "JetEventIndex" on
path: DexPathList[[directory "."],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
01-30 23:31:38.418 1469-1469/? W/System.err: at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
01-30 23:31:38.418 1469-1469/? W/System.err: at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
01-30 23:31:38.418 1469-1469/? W/System.err: at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
01-30 23:31:38.418 1469-1469/? W/System.err: at com.jetcore.JetClassLoader.getConstructorForEventIndex(JetClassLoader.java:45)
01-30 23:31:38.418 1469-1469/? W/System.err: at com.jetcore.JetClassLoader.createEventIndex(JetClassLoader.java:54)
01-30 23:31:38.418 1469-1469/? W/System.err: at com.jetcore.JetDock.<init>(JetDock.java:21)
编辑:
我尝试将模块的包装类型更改为jar,但仍然没有。我的注释处理器不会触发。
项目链接在这里以防任何人想要检查pom文件:https://github.com/OmerUygurOzer/Jet
Gradle版本4.1 Android插件3.0.1
答案 0 :(得分:0)
似乎版本1.0.9
不可用。 Git页面有版本1.0.4
。请尝试使用1.0.4
。
答案 1 :(得分:0)
尝试这样做:
1.在存储库末尾的根build.gradle中添加它:
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
2.添加依赖
dependencies {
compile 'com.github.OmerUygurOzer.jet:jet:v1.0.9'
}