[英]Android Studio Gradle Build : Import Eclipse Library Project : Issue
我在Android Studio中有一个项目,并且按照下面提到的链接在其中添加了库项目。
但是我面临这个问题:
Gradle'MyApplication2'项目刷新失败:方法的无签名:org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.compile()适用于参数类型:(org.gradle.api.internal.file.collections .DefaultConfigurableFileTree)值:[目录'libs']可能的解决方案:module(java.lang.Object)
谁能帮忙/解释我Gradle的构建过程。
应用程序build.gradle:
buildscript {
repositories {
mavenCentral()
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
classpath 'com.android.tools.build:gradle:0.8.+'
compile project(":satellite-menu")
}
}
allprojects {
repositories {
mavenCentral()
}
}
库build.gradle:
apply plugin: 'com.android.library'
dependencies {
compile 'com.android.support:support-v4:21.0.3'
}
android {
compileSdkVersion 21
buildToolsVersion "21.1.2"
defaultConfig {
minSdkVersion 14
targetSdkVersion 21
}
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
res.srcDirs = ['res']
}
}
}
应用程序settings.gradle
include ':app', ':satellite-menu'
project(':satellite-menu').projectDir = new File('libs/satellite-menu')
您已将dependencies
语句放在错误的构建文件中的错误的dependencies
块中。 buildscript
块中的依赖项用于告诉构建系统在哪里可以找到构建系统插件,例如Android Gradle插件。 对于您的模块依赖关系,请将其放在模块构建文件的顶级dependencies
块中。
完成后,顶级构建文件应如下所示:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.8.+'
}
}
...
并且模块的外观应如下所示:
apply plugin: 'com.android.library'
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile project(":satellite-menu")
compile 'com.android.support:support-v4:21.0.3'
}
android {
...
至于您得到的实际错误消息的含义是什么,很难理解,但是本质上来说, compile
指令在buildscript
下的dependencies
块中是无效的-构建系统无法理解它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.