记录一次组件化butterknife的接入过程和问题

本文详细介绍如何在Android项目中集成ButterKnife库,包括build.gradle的配置、module及app级别的依赖设置,解决R2找不到等问题,确保版本兼容性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、buildgradle配置

 dependencies {
        classpath 'com.android.tools.build:gradle:3.1.0'
        classpath "com.jakewharton:butterknife-gradle-plugin:9.0.0"
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }

2、module配置

if (isModule.toBoolean()) {
    apply plugin: 'com.android.application'
} else {
    apply plugin: 'com.android.library'

}
apply plugin: 'com.jakewharton.butterknife'```

dependencies {
    api 'com.jakewharton:butterknife:9.0.0'
    annotationProcessor 'com.jakewharton:butterknife-compiler:9.0.0'

}

3、app配置

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    api  project(':common')
    annotationProcessor 'com.jakewharton:butterknife-compiler:9.0.0'
}

4、Error with GeneratePackageListTask when build for Android
参考:https://github.com/facebook/react-native/issues/46069

rootProject.name = 'rn_74_camera_demo'
+pluginManagement { includeBuild("../node_modules/@react-native/gradle-plugin") }
+plugins { id("com.facebook.react.settings") }
+extensions.configure(com.facebook.react.ReactSettingsExtension){ ex -> ex.autolinkLibrariesFromCommand() }
- apply from: file("../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesSettingsGradle(settings)
include ':app'
includeBuild('../node_modules/@react-native/gradle-plugin')

apply from: new File(["node", "--print", "require.resolve('expo/package.json')"].execute(null, rootDir).text.trim(), "../scripts/autolinking.gradle")
useExpoModules()

4、其它问题
library中的R需要替换成R2,接入中遇到R2一直找不到的问题,后来发现需要使用9.0.0的版本
同学gradle使用4.6+才行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值