使用Gradle构建Android项目

3
我正在尝试使用Gradle构建工具构建简单的Android应用程序。但是我遇到了以下错误:

没有org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.compile()方法的签名适用于参数类型:(java.lang.String),值为[org.gradle.api.plugins:gradle-android-plugin:1.2.0-SNAPSHOT] 可能的解决方案:module(java.lang.Object)

这是build.gradle的简单配置:
buildscript {
 repositories {
     mavenCentral()
  }
  dependencies {
    compile 'org.gradle.api.plugins:gradle-android-plugin:1.2.0-SNAPSHOT'
  }
}


apply plugin: 'android'

repositories {
   mavenCentral()
} 


processResource {
    expand (project.properties)
}

task configureDebug << {
    jar.classifier = "debug"
}

task configureRelease << {
    proguard.enabled = true
}
3个回答

1

当应用插件时,您需要告诉构建脚本在其类路径中使用它。这不是编译所必需的,因此只需将配置compile更改为classpath即可。有关更多信息,请参见Gradle用户指南中的51.5.1.在另一个项目中使用您的插件

buildscript {
    repositories {
        mavenCentral()
    }

    dependencies {
        classpath 'org.gradle.api.plugins:gradle-android-plugin:1.2.0-SNAPSHOT'
    }
}

编辑:目前该插件不支持Android SDK的r20版本。更多信息请参见问题


我将编译更改为classpath,但构建时仍然出现错误,并且指向apply plugin:'android'。失败:构建失败并出现异常。*在哪里:构建文件'/home/user/workspace/ImageSdcard/build.gradle'行:16 *出了什么问题:评估根项目“ProjectName”时出现问题。>断言toolsDir.exists()| | | false / home / user / android-sdk-linux / tools - oczdref
请在命令行上使用“-s”标志运行它,并发布堆栈跟踪。 - Benjamin Muschko
我尝试运行gradle -s build,但是我遇到了以下异常,这是日志。这是链接上的日志error.log - oczdref
看起来你在local.properties中没有正确设置sdk.dir。你的路径中是否有空格?如果是,那么目录/home/user/android-sdk-linux /tools是否存在? - Benjamin Muschko
如果你知道如何修复它,我建议在GitHub上的问题中添加评论或向插件提交pull请求。 - Benjamin Muschko
显示剩余4条评论

1
请确保您在Android Studio的层次结构中的应用程序build.gradle "YourProjectName->yourprojectname->build.gradle"上编写了依赖块。

0
使用 Android Gradle 工具。
repositories {
    mavenCentral()
}
dependencies {
    classpath 'com.android.tools.build:gradle:0.4'
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接