gpt4 book ai didi

android - 如何使用 Dagger & Butterknife 设置 Buck?

转载 作者:行者123 更新时间:2023-11-29 19:08:18 27 4
gpt4 key购买 nike

大家好我的开发人员,

我正在尝试从 Gradle 切换到 Buck,但在使用 Dagger 和 Butterknife 进行设置时遇到问题,因为它们需要注释处理。

我找到了一些链接和教程,但它们已经有几年(~4)年了,我认为可能会有一些更新的方法来做事。

这是我已经看过的: https://github.com/ryan-endacott/android-buck-dagger-starter

提前致谢,帕特里克

最佳答案

Buck 支持对基于 Java 的规则(包括 android_library)进行注解处理。看看在 buck 存储库中如何使用 Immutables(link 到源代码):

  1. 首先,您需要声明库 jar:
    java_library(        name = "immutables",        exported_deps = [            ":builder",            ":value",        ],        visibility = [            "PUBLIC",        ],    )    prebuilt_jar(        name = "value",        binary_jar = "value-2.5.6.jar",        source_jar = "value-2.5.6-sources.jar",        licenses = [            "COPYING",        ],    )    prebuilt_jar(        name = "builder",        binary_jar = "builder-2.5.6.jar",        source_jar = "builder-2.5.6-sources.jar",        licenses = [            "COPYING",        ],    )
  1. 定义注释处理器:
    java_annotation_processor(        name = "processor",        isolate_class_loader = True,        processor_class = "org.immutables.value.internal.$processor$.$Processor",        visibility = [            "PUBLIC",        ],        deps = [            ":immutables",        ],    )
  1. 然后您可以将此注释处理器添加到目标的插件列表中:
    java_library(        name = "target",        plugins = [            "//third-party/java/immutables:processor",        ],        deps = [            ...        ],        ...    )

降压存储库 contains添加此注释处理器的自定义规则 (java_immutables_library),以便开发人员无需在每个目标上指定插件。您或许可以使用类似的方法。

关于android - 如何使用 Dagger & Butterknife 设置 Buck?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46363574/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com