你好,我的开发人员,
我正在尝试从 Gradle 切换到 Buck,并且在使用 Dagger 和 Butterknife 进行设置时遇到问题,因为它们需要注释处理。
我找到了一些链接和教程,但它们已经有几年(~4)年的历史了,我认为可能会有一些更新的方法来做事。
这就是我已经看过的内容: https ://github.com/ryan-endacott/android-buck-dagger-starter
在此先感谢,帕特里克
你好,我的开发人员,
我正在尝试从 Gradle 切换到 Buck,并且在使用 Dagger 和 Butterknife 进行设置时遇到问题,因为它们需要注释处理。
我找到了一些链接和教程,但它们已经有几年(~4)年的历史了,我认为可能会有一些更新的方法来做事。
这就是我已经看过的内容: https ://github.com/ryan-endacott/android-buck-dagger-starter
在此先感谢,帕特里克
android_library
Buck 支持对基于 Java 的规则(包括)的注解处理。看看 Immutables 在 buck 存储库中是如何使用的(链接到源代码):
java_library( name = "不可变", 导出的_deps = [ “:建造者”, “:价值”, ], 能见度 = [ “上市”, ], ) prebuilt_jar( 名称=“价值”, binary_jar = "value-2.5.6.jar", source_jar = "value-2.5.6-sources.jar", 许可证 = [ "复制", ], ) prebuilt_jar( 名称=“建设者”, binary_jar = "builder-2.5.6.jar", source_jar = "builder-2.5.6-sources.jar", 许可证 = [ "复制", ], )
java_annotation_processor( 名称=“处理器”, 隔离类加载器=真, processor_class = "org.immutables.value.internal.$processor$.$Processor", 能见度 = [ “上市”, ], 部门= [ “:不可变”, ], )
java_library( 名称=“目标”, 插件 = [ "//第三方/java/immutables:processor", ], 部门= [ ... ], ... )
Buck 存储库包含添加此注释处理器的自定义规则 ( java_immutables_library
),因此开发人员无需在每个目标上指定插件。您可能可以使用类似的方法。