Android 梯度同步错误:配置名为';默认值';找不到
我想在我的应用程序中添加一个外部库。我遵循了对一个现有问题的最高票答案中给出的步骤 但当我在步骤6之后尝试构建项目时,即在Android 梯度同步错误:配置名为';默认值';找不到,android,android-studio,gradle,dependencies,build.gradle,Android,Android Studio,Gradle,Dependencies,Build.gradle,我想在我的应用程序中添加一个外部库。我遵循了对一个现有问题的最高票答案中给出的步骤 但当我在步骤6之后尝试构建项目时,即在app/build.gradleascompileproject(“:guillotinemenu”)中添加依赖项时,我面临错误。我尝试了所有与此错误相关的stackoverflow链接,但没有成功。我在我的应用程序目录中创建了一个名为libs的文件夹,并在那里复制了项目文件夹断头台菜单。这是我的 build.gradle(模块:app)文件 apply plugin: 'c
app/build.gradle
ascompileproject(“:guillotinemenu”)
中添加依赖项时,我面临错误。我尝试了所有与此错误相关的stackoverflow链接,但没有成功。我在我的应用程序目录中创建了一个名为libs的文件夹,并在那里复制了项目文件夹断头台菜单。这是我的
build.gradle(模块:app)
文件
apply plugin: 'com.android.application'
android {
compileSdkVersion 22
buildToolsVersion "22.0.1"
defaultConfig {
applicationId "com.sunshine.bbreaker.appet_i"
minSdkVersion 14
targetSdkVersion 22
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
productFlavors {
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:recyclerview-v7:+'
compile 'com.github.navasmdc:MaterialDesign:1.+@aar'
compile 'com.android.support:appcompat-v7:22.0.+'
// GuillotineMenu
compile project(":guillotinemenu")
}
settings.gradle(项目设置)文件:
include ':app', ':guillotinemenu'
project(':guillotinemenu').projectDir = new File('libs/guillotinemenu')
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.2.3'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}} allprojects {
repositories {
jcenter()
}}
include ':app', ':library'
apply plugin: 'com.android.application'
android {
compileSdkVersion 22
buildToolsVersion "21.1.2"
defaultConfig {
applicationId "com.yalantis.guillotine.sample"
minSdkVersion 15
targetSdkVersion 22
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile project(':library')
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.1.1'
compile 'com.jakewharton:butterknife:6.1.0'
}
build.gradle(项目:断头台菜单)文件:
include ':app', ':guillotinemenu'
project(':guillotinemenu').projectDir = new File('libs/guillotinemenu')
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.2.3'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}} allprojects {
repositories {
jcenter()
}}
include ':app', ':library'
apply plugin: 'com.android.application'
android {
compileSdkVersion 22
buildToolsVersion "21.1.2"
defaultConfig {
applicationId "com.yalantis.guillotine.sample"
minSdkVersion 15
targetSdkVersion 22
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile project(':library')
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.1.1'
compile 'com.jakewharton:butterknife:6.1.0'
}
设置.gradle(项目:断头台菜单)文件:
include ':app', ':guillotinemenu'
project(':guillotinemenu').projectDir = new File('libs/guillotinemenu')
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.2.3'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}} allprojects {
repositories {
jcenter()
}}
include ':app', ':library'
apply plugin: 'com.android.application'
android {
compileSdkVersion 22
buildToolsVersion "21.1.2"
defaultConfig {
applicationId "com.yalantis.guillotine.sample"
minSdkVersion 15
targetSdkVersion 22
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile project(':library')
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.1.1'
compile 'com.jakewharton:butterknife:6.1.0'
}
build.gradle(断头台菜单)文件:
include ':app', ':guillotinemenu'
project(':guillotinemenu').projectDir = new File('libs/guillotinemenu')
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.2.3'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}} allprojects {
repositories {
jcenter()
}}
include ':app', ':library'
apply plugin: 'com.android.application'
android {
compileSdkVersion 22
buildToolsVersion "21.1.2"
defaultConfig {
applicationId "com.yalantis.guillotine.sample"
minSdkVersion 15
targetSdkVersion 22
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile project(':library')
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.1.1'
compile 'com.jakewharton:butterknife:6.1.0'
}
如果你需要更多的信息,请告诉我。提前感谢。您应该有这样的结构:
projectRoot
app
build.gradle
library
build.gradle
build.gradle
settings.gradle
每个模块都有自己的build.gradle
文件。此外,root/settings.gradle
定义了项目中的所有模块。不要在模块内使用其他settings.gradle
在设置中。渐变:
include ':app', ':library'
在build.gradle中
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.2.3'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
}
}
apply plugin: 'com.android.library'
android {
compileSdkVersion ...
buildToolsVersion ...
defaultConfig {
....
}
}
dependencies {
//....
}
在库/build.gradle中
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.2.3'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
}
}
apply plugin: 'com.android.library'
android {
compileSdkVersion ...
buildToolsVersion ...
defaultConfig {
....
}
}
dependencies {
//....
}
在app/build.gradle中使用您的文件,但更改:
dependencies {
//...
// GuillotineMenu
compile project(":library")
}
更新:
在您发表以下评论之后,我认为在您的情况下,库文件夹是另一个项目的根文件夹。
这意味着您应该参考此项目中的模块
projectRoot
app
build.gradle
libs
guillotinemenu
build.gradle //top level file of guillotinemenu project
-->> module
build.gradle //build.gradle of the module
因此,请更改projectRoot的settings.gradle
include ':app', ':guillotinemenu'
project(':guillotinemenu').projectDir = new File('libs/guillotinemenu/module')
模块(libs/guillotinemus/module)应该有一个
build.gradle
作为上面描述的库/build.gradle。发布您的guillotinemus/build.gradle。我已经在下面发布了名为“build.gradle(项目:guillotinemus)”的复选框。您的“build.gradle(项目:断头台菜单)”是顶级文件。你的库里面必须有build.gradle。是的,谢谢,我添加了断头台菜单库的build.gradle文件。这个build.gradle是顶级文件。它不能像图书馆一样工作。检查更新的答案。库断头台菜单已具有build.gradle文件和settings.gradle文件。它正在使用它内部的另一个库,该库只有一个build.gradle文件。那么,您想让我更改或删除断头台菜单项目的设置。gradle?@brainbreaker原始问题中不清楚,抱歉。我已经更新了答案。如果断头台菜单是另一个项目,则必须将模块指向该项目内