我有一个Android Studio应用程序.它有一个库依赖项(Android-Bootstrap),当我尝试同步gradle时,它给了我一个错误:
未找到名称"default"的配置.
我的结构是:
-FTPBackup -fotobackup -build.gradle -Libraries -Android-Bootstrap -Settings.gradle -build.gradle -Settings.gradle -Build.gradle
FTPBackup settings.gradle和build.gradle:
include ':fotobackup' include ':libraries:Android-Bootstrap',':Android-Bootstrap'
// Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:0.9.+' } } allprojects { repositories { mavenCentral() } }
而fotobackup中的build.gradle是:
apply plugin: 'android' android { compileSdkVersion 19 buildToolsVersion '19.0.3' defaultConfig { minSdkVersion 14 targetSdkVersion 19 versionCode 1 versionName "1.0" } buildTypes { release { runProguard false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' } } } apply plugin: 'android' dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:support-v4:+' compile project (':libraries:Android-Bootstrap') }
该库是从https://github.com/Bearded-Hen/Android-Bootstrap下载的,它有build.gradle,设置等.
怎么了?
首先,拥有多个settings.gradle文件并不好- 它只查看顶级文件.
当你得到"配置名称'默认'未找到"错误时,它确实令人困惑,但这意味着Gradle正在寻找某个地方的模块(或build.gradle)文件,并且它没有找到它.在您的情况下,您在settings.gradle文件中有这个:
include ':libraries:Android-Bootstrap',':Android-Bootstrap'
这让Gradle在FTPBackup/libraries/Android-Bootstrap上寻找一个库.如果您使用的是区分大小写的文件系统(和你没有输错库在你的问题时,你的意思库),它可能无法找到FTPBackup /库/ Android的引导,因为情况不同.它还在FTPBackup/Android-Bootstrap上寻找另一个库,它绝对不会找到一个,因为该目录不存在.
这应该工作:
include ':Libraries:Android-Bootstrap'
您的块中需要相同的区分大小写的规范dependencies
:
compile project (':Libraries:Android-Bootstrap')
compile fileTree(dir: 'libraries', include: ['Android-Bootstrap'])
在应用程序的gradle文件中使用上面的行而不是
compile project (':libraries:Android-Bootstrap')
在我的setting.gradle中,我包含了一个不存在的模块.一旦我删除它,它就开始工作了.这可能是解决此问题的另一种方法
如果您使用react native获得此错误,则可能是由于您删除的NPM包的链接(就像我的情况一样).在settings.gradle和build.gradle文件中删除对它的引用后,我清理并重建了它,它和新的一样好:)