【问题标题】:Android project won't run dependency annotation processorAndroid 项目不会运行依赖注解处理器
【发布时间】:2018-01-31 06:06:57
【问题描述】:

我有一个包含 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 安卓插件 3.0.1

【问题讨论】:

    标签: java android maven gradle annotation-processing


    【解决方案1】:

    似乎版本1.0.9 不可用。 Git 页面的版本为1.0.4。请尝试1.0.4

    https://github.com/OmerUygurOzer/Jet

    【讨论】:

    • 它可用。我管理那个回购。它也不适用于以前的版本。每个版本的增量基本上都是我试图让它工作。
    【解决方案2】:

    尝试这样做:

    1.将它添加到你的根 build.gradle 的存储库末尾:

    allprojects {
            repositories {
                ...
                maven { url 'https://jitpack.io' }
            }
        }
    

    2.添加依赖

    dependencies {
                compile 'com.github.OmerUygurOzer.jet:jet:v1.0.9'
        }
    

    【讨论】:

    • 当我这样做时,我无法引用存储库中的任何类。 Jitpack 也已经在存储库下。
    • 就像我说的,构建工作正常。但应用程序崩溃,因为它找不到类。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-08-01
    • 2018-06-19
    • 1970-01-01
    • 2012-10-19
    • 1970-01-01
    • 1970-01-01
    • 2016-06-19
    相关资源
    最近更新 更多