Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >找不到com.android.databinding:编译器3.4.0

找不到com.android.databinding:编译器3.4.0
EN

Stack Overflow用户
提问于 2019-05-03 19:29:25
回答 4查看 5.3K关注 0票数 1

大家好,我们如何在android_plugin_version = '3.4.0‘中启用数据库?作为我的android,我安装了最新版本,当将android_plugin_version = '3.4.0‘降级到3.2.xx时,我收到了另一个错误。

项目分级

代码语言:javascript
运行
AI代码解释
复制
buildscript {
ext {
    kotlin_version = '1.3.31'
    android_plugin_version = '3.4.0'
}
repositories {
    google()
    jcenter()
    maven { url 'https://maven.google.com' }
}
dependencies {
    classpath "com.android.tools.build:gradle:$android_plugin_version"
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
  }
}

allprojects {
repositories {
    google()
    jcenter()
    mavenCentral()
 }
}

模块

代码语言:javascript
运行
AI代码解释
复制
 apply plugin: 'com.android.application'

 apply plugin: 'kotlin-android'

 apply plugin: 'kotlin-android-extensions'

 apply plugin: 'kotlin-kapt'

android {
    compileSdkVersion 28
    defaultConfig {
    applicationId "xxx.xxx.com"
    minSdkVersion 21
    targetSdkVersion 28
    versionCode 1
    versionName "1.0"
    testInstrumentationRunner 
"android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
    }
}
dataBinding {
    enabled = true
}

kapt {
    generateStubs = true
  }
}

dependencies {
   implementation fileTree(dir: 'libs', include: ['*.jar'])
   implementation"org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
   implementation 'com.android.support:appcompat-v7:28.0.0'
   implementation 'com.android.support.constraint:constraint-layout:1.1.3'
   testImplementation 'junit:junit:4.12'
   androidTestImplementation 'com.android.support.test:runner:1.0.2'
   androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'

   kapt "com.android.databinding:compiler:$android_plugin_version"
}

同步没有问题,但是当运行它时,我收到了这个错误。

代码语言:javascript
运行
AI代码解释
复制
Could not find com.android.databinding:compiler:3.4.0.
Searched in the following locations:

https://dl.google.com/dl/android/maven2/com/android/databinding/compiler/3.4.0/compiler-3.4.0.pom - https://dl.google.com/dl/android/maven2/com/android/databinding/compiler/3.4.0/compiler-3.4.0.jar - https://jcenter.bintray.com/com/android/databinding/compiler/3.4.0/compiler-3.4.0.pom - https://jcenter.bintray.com/com/android/databinding/compiler/3.4.0/compiler-3.4.0.jar - https://repo.maven.apache.org/maven2/com/android/databinding/compiler/3.4.0/compiler-3.4.0.pom - https://repo.maven.apache.org/maven2/com/android/databinding/compiler/3.4.0/compiler-3.4.0.jar

EN

回答 4

Stack Overflow用户

发布于 2019-05-03 20:37:19

您正在使用Databinding编译器的错误版本。对于最新版本,您可以查看像mvnrepository储存库这样的站点。目前的最新版本是3.4.0。在这里,您传递的是错误的版本:

代码语言:javascript
运行
AI代码解释
复制
 kapt "com.android.databinding:compiler:$android_plugin_version"

相反,请使用以下命令:

代码语言:javascript
运行
AI代码解释
复制
kapt "com.android.databinding:compiler:3.4.0"

更新

在AndroidStudio3.3及以上版本中,您不需要添加注释处理器kapt "com.android.databinding:compiler:$android_plugin_version"。只需在模块gradle文件中设置dataBinding.enabled = true或如下所示:

代码语言:javascript
运行
AI代码解释
复制
android {
    ...
    dataBinding {
        enabled = true
    }
}
票数 8
EN

Stack Overflow用户

发布于 2019-05-03 23:38:53

我只需移除kapt "com.android.databinding:compiler$android_plugin_version“,它就能工作ActivityMainBinding出现在我的MainActivity中。

Gradle应用程序

代码语言:javascript
运行
AI代码解释
复制
    apply plugin: 'com.android.application'

     apply plugin: 'kotlin-android'

     apply plugin: 'kotlin-android-extensions'

     apply plugin: 'kotlin-kapt'

     android {
        compileSdkVersion 28
        defaultConfig {
        applicationId "xxx.xx.com"
        minSdkVersion 21
        targetSdkVersion 28
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

    dataBinding {
        enabled = true
    }
}

kapt {
    correctErrorTypes = true
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation"org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}
票数 2
EN

Stack Overflow用户

发布于 2020-04-21 19:22:04

转到file>>setting>>Gradle>>android工作室并检查嵌入式maven

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55979206

复制
相关文章

相似问题

添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档