该项目可能正在使用不包含方法 'compileSdkVersion()' 的 Gradle 版本

The project may be using a version of Gradle that does not contain the method 'compileSdkVersion()'

我在尝试 运行 最初在 Eclipse ADT 上创建的项目时遇到了这个问题。

Error:(17, 0) Gradle DSL method not found: 'compileSdkVersion()'
Possible causes:<ul><li>The project 'TaxiAndroidOpen-master' may be using a version of Gradle that does not contain the method.
<a href="open.wrapper.file">Open Gradle wrapper file</a></li><li>The build file may be missing a Gradle plugin.
<a href="apply.gradle.plugin">Apply Gradle plugin</a></li>

我已经将其转换为 Android Studio gradle 系统。

但是我不能 运行 它,也不能编译它,因为这个错误,这里是 gradle 生成的:

// Top-level build file where you can add configuration options common to  all sub-projects/modules.
buildscript {
repositories {
    jcenter()
}
dependencies {
    classpath 'com.android.tools.build:gradle:1.0.0'
   }
}
allprojects {
repositories {
    jcenter()
   }
}

ext {
compileSdkVersion 17
buildToolsVersion '18.1.0'
}
dependencies {
}

我在 SO 上发现了一些其他帖子,有类似的错误,但没有人有这个特定的错误。

我正在使用 Android Studio 1.0.2,x86。

任何人都可以解释一下吗?

提前致谢!

编辑

已更新build.gradle:

apply plugin: 'com.android.application'

android {
compileSdkVersion 17
buildToolsVersion "21.1.2"

defaultConfig {
    applicationId "com.opentaxi.android"
    minSdkVersion 9
    targetSdkVersion 19
}

buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
    }
}
}

dependencies {
compile project(':comtaxibulgariamap_mapsforge_044201406271417533')
compile files('libs/littlefluffylocationlibrary_r15.jar')
}

您最近升级到 Android Studio 1.0 了吗?如果是这样,请在 app/build.gradle.

中将 runProguard 替换为 minifyEnabled

您的应用程序模块的 build.gradle 文件应如下所示。

apply plugin: 'com.android.application'

android {
   compileSdkVersion 17
   buildToolsVersion "21.1.2"

defaultConfig {
     applicationId "com.opentaxi.android"
     minSdkVersion 9
     targetSdkVersion 19
  }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }

}

dependencies {

    compile project(':comtaxibulgariamap_mapsforge_044201406271417533')
    compile fileTree(include: ['*.jar'], dir: 'libs')
}

并从您的主 build.gradle(在应用程序的根目录中)中删除这些行(如果它在您发布时存在)。

  ext {
      compileSdkVersion 17
      buildToolsVersion '18.1.0'
    }
    dependencies {
    }

实现文件放错也会出现这个错误gradle。

这里应该放在build.graddle(模块)里面

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'androidx.appcompat:appcompat:1.0.2'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    implementation 'com.github.barteksc:android-pdf-viewer:2.8.2'

    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'androidx.test.ext:junit:1.1.0'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.1'
}

而不是在 build.graddle(App)

在我添加后为我工作,在 build.gradle(模块):

应用插件:'kotlin-kapt'