当前位置: 首页 > 知识库问答 >
问题:

无法使用butterknife依赖项构建android项目

糜正业
2023-03-14

由于butterknife依赖的错误,我无法构建android项目。

错误

任务': app: javaPreCompileDebug'执行失败。

无法解析配置的所有文件: app: dedegAnnotationProcessorClasspath。转换butterknife-compiler-8.6.0.jar失败(com.jakewharton:巴特切夫-编译器: 8.6.0)以匹配属性{artifactType=加工罐,org.gradle.category=库,org.gradle.libraryelements=罐,org.gradle.status=发布,org.gradle.usage=java-runtime}.

应用级Gradle构建文件中的依赖关系

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'androidx.appcompat:appcompat:1.2.0'
    implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'androidx.test.ext:junit:1.1.2'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
    implementation 'androidx.cardview:cardview:1.0.0'
    implementation 'androidx.recyclerview:recyclerview:1.2.0-beta02'
    implementation 'com.melnykov:floatingactionbutton:1.3.0'
  //  implementation 'com.android.support:design:28.0.0'
 //   implementation 'com.android.support:support-v13:28.0.0'
    implementation 'com.jpardogo.materialtabstrip:library:1.0.6'
    implementation 'com.jakewharton:butterknife:8.6.0'
    annotationProcessor 'com.jakewharton:butterknife-compiler:8.6.0'



}

我应该如何解决它?

共有1个答案

曾云
2023-03-14

请注意,根据官方留档,黄油刀工具现在不建议使用。
他们建议切换到视图绑定。

因此,我请求你重新考虑你使用黄油刀的决定。

在您的gradle文件中,请确保正确添加了以下行
添加这些更改,然后单击文件

android {
  ...
  // Butterknife requires Java 8.
  compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
  }
}

附属国

dependencies {
  implementation 'com.jakewharton:butterknife:10.2.3'
  annotationProcessor 'com.jakewharton:butterknife-compiler:10.2.3'
}

如果您使用的是Kotlin,请将annotationProcessor替换为kapt。

要在图书馆使用黄油刀,请按照官方留档中图书馆项目一节中提供的步骤

 类似资料:
  • 我试图用Gradle构建我的第一个项目,我认为我的gradle文件和设置是正确的。 我只使用一个模块并支持V4 AppCompatBar库。 项目-build.gradle Project-settings.gradle 主模块-build.gradle 带有-i标志的控制台输出:

  • 问题内容: 首先,我要说我是Ant的新手。就像之前一样,我只是在两天前才开始学习它以完成此任务。 我想要做的是创建一个“ master”蚂蚁脚本,该脚本调用其他几个蚂蚁脚本。例如: 现在,我拥有用于​​A,B和C的所有单独版本。通过这个,我的意思是我可以从这些文件夹中的任何一个运行“ ant”,它将构建项目并生成一个jar文件。如果以这种方式构建A,B和C,则我有3个jar文件。然后,我可以将它们

  • 问题是gradle找不到依赖项的jar,但gradle找错了地方。Gradle一直在错误的目录(谷歌和Android支持libary的目录)中搜索文件.... 在以下位置搜索:文件:/d://programme/androis-sdks/extras/android/m2repository/org/springframework/android/spring-android-rest-templ

  • 您好,我按照“Configure you Android Studio页面”中的说明安装离线构建依赖项(在https://developer.Android.com/Studio/intro/Studio-config#offline)。下载gradle插件和maven依赖项,将它们解压缩到所需的文件夹中,并创建offline.gradle文件,将其放在适当的文件夹中。但是,在指南中说,要测试它是

  • 我第一次尝试离子。我在iOS上没有问题,但在Android上构建演示应用程序会给我一个几乎没有信息的错误(见下文)。在我看来,问题可能出在Cordova附带的gradle配置文件上,但我不认为在Cordova中编辑特定于平台的文件是很好的做法,如果可以避免的话。

  • 我给ivy添加了一个依赖项(我们称之为a)。在maven central中具有pom文件的xml。Ivy使用ibiblio来解析maven依赖项。添加到常春藤中的依赖项(A)。xml具有可传递依赖项(B)。到目前为止,一切都很好。传递依赖(B)的依赖(C)不能用常春藤来解决。 我在常春藤上定义了一个新的名字。如下所示的xml: 在B的pom文件中,C在编译和测试范围中定义如下: 当我在ivy的缓存