【问题标题】:Gradle DSL method not found: 'main()'找不到 Gradle DSL 方法:'main()'
【发布时间】:2016-04-27 05:58:33
【问题描述】:

同步 Gradle 会出现以下错误 错误:(24, 0) 找不到 Gradle DSL 方法:'main()' 可能的原因:

  • 项目“OcrAgainNew”可能正在使用不包含该方法的 Gradle 版本。 打开 Gradle 包装文件
  • 构建文件可能缺少 Gradle 插件。 应用 Gradle 插件
  • “gradle.build”

    buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.1.0'
       }
    }
    
    apply plugin: 'com.android.library'
    
    android {
    compileSdkVersion 23
    buildToolsVersion "21.1.2"
    defaultConfig {
        minSdkVersion 15
        targetSdkVersion 23
       }
    }
    
    sourceSets.main {
        manifest.srcFile 'AndroidManifest.xml'
        java.srcDirs = ['src']
        resources.srcDirs = ['src']
        res.srcDirs = ['res']
        jniLibs.srcDirs = ['libs']
    }
    

    screenshot of my project

    【问题讨论】:

      标签: android android-gradle-plugin android-studio-2.1


      【解决方案1】:

      您必须在android 块内定义sourceSets

      android {
         compileSdkVersion 23
         buildToolsVersion "21.1.2"
         defaultConfig {
             minSdkVersion 15
             targetSdkVersion 23
         }
      
         sourceSets.main {
            manifest.srcFile 'AndroidManifest.xml'
            java.srcDirs = ['src']
            resources.srcDirs = ['src']
            res.srcDirs = ['res']
            jniLibs.srcDirs = ['libs']
         }
      }
      

      【讨论】:

        【解决方案2】:

        如果您使用的是 0.14.0 或更高版本的 gradle 插件,则应在 build.gradle 文件中将 runProguard 替换为 minifyEnabled

        【讨论】:

        • 它是 minifyEnabled 而不是 runProguard。它给出的错误是,它说“找不到主要方法”
        猜你喜欢
        • 2015-04-16
        • 1970-01-01
        • 2019-10-21
        • 2015-11-19
        • 2017-10-27
        • 2015-03-29
        • 2015-01-20
        • 2015-01-10
        • 2015-02-21
        相关资源
        最近更新 更多