我正在使用排球库在android中执行网络操作。所以我试图在我的项目中添加这个库,该项目是在Android Studio和gradle系统中创建的。
我在项目中添加了凌空库但是当我与gradle同步时,我收到错误消息。我尝试了我在这里看到的所有答案,但没有对我有用。
错误消息:在Android Studio中找不到名称为“default”的配置
排球/的build.gradle
apply plugin: 'android-library'
android {
compileSdkVersion 19
buildToolsVersion '19.0.1'
sourceSets {
defaultConfig {
minSdkVersion 8
targetSdkVersion 19
}
main {
assets.srcDirs = ['assets']
res.srcDirs = ['res']
aidl.srcDirs = ['src']
resources.srcDirs = ['src']
renderscript.srcDirs = ['src']
java.srcDirs = ['src']
manifest.srcFile 'AndroidManifest.xml'
}
}
}
应用程序/的build.gradle
apply plugin: 'android'
android {
compileSdkVersion 19
buildToolsVersion '19.0.1'
defaultConfig {
minSdkVersion 8
targetSdkVersion 19
versionCode 1
versionName "1.0"
}
buildTypes {
release {
runProguard false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
dependencies {
compile 'com.android.support:appcompat-v7:19.+'
compile project(':library:volley')
}
根/的build.gradle
// 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.1'
}
}
allprojects {
repositories {
mavenCentral()
}
}
settings.gradle
include ':app'
include ':library:volley'
答案 0 :(得分:96)
尝试:
git submodule init
git submodule update
答案 1 :(得分:68)
将库文件夹添加到项目的根位置,并将所有库文件复制到那里。对于ex YourProject / library然后同步它,休息对我来说似乎没问题。
答案 2 :(得分:22)
这可能是一种罕见的情况,但对我来说,settings.gradle中包含的库并不存在。
E.g。我在我的settings.gradle中有include ':libraries:Android-RateThisApp:library'
但是文件夹Android-RateThisApp为空。一旦我检查了这个子模块,gradle sync就会成功。
答案 3 :(得分:14)
如果要对多个项目使用相同的库文件夹,可以将其在gradle中引用到外部位置,如下所示:
settings.gradle:
include 'app', ':volley'
project(':volley').projectDir = new File('../libraries/volley')
在您的应用中 的build.gradle
dependencies {
...
compile project(':volley')
...}
答案 4 :(得分:6)
我也面临这个问题,但我遵循以下步骤: - 1)我将模块(库)添加到特定文件夹名称ThirdPartyLib
要解决此问题,请转到 settings.gradle ,而不仅仅是添加以下内容: -
项目(':')。projectDir =新文件('ThirdPartyLib /')
: - 是模块名称......
答案 5 :(得分:3)
要快速诊断此错误,请立即转到终端或使用Android Studio内置的终端(可在底部状态栏中访问)。切换到PROJECT的主目录(settings.gradle
所在的位置)。
1。)检查以确保您的settings.gradle
包含子项目。像这样的东西。这可确保您的多项目构建了解您的库子项目。
include ':apps:App1', ':apps:App2', ':library:Lib1'
冒号之间的文本是子目录。
2。)运行以下gradle命令,看看Gradle是否可以为您提供库的任务列表。在settings.gradle
定义中使用相同的限定符。这将单独揭示库构建脚本的问题。
./gradlew :library:Lib1:tasks --info
3.确保上一步的输出列出了“assembleDefault”任务。如果它没有确保库在build.gradle
中包含Android库插件。像这样在最顶层。
apply plugin: 'com.android.library'
我知道原始海报的问题已得到解答,但我相信答案在过去一年中有所发展,我认为错误有多种原因。我认为这个解决方案的流程可以帮助那些遇到各种问题的人。
答案 6 :(得分:3)
检查settings.gradle
文件。包含的模块可能丢失或在另一个目录中。例如,在settings.gradle
下面的行中,gradle搜索项目目录中的common-lib
模块:
include ':common-lib'
如果缺少,您可以找到该模块并将其复制到您的项目中,或在settings.gradle
文件中引用其路径:
include ':common-lib'
project(':common-lib').projectDir = new File('<path to your module i.e. C://Libraries/common-lib>') //
答案 7 :(得分:0)
对我来说(根据我看过的一些评论),问题是gradle无法找到导入库的build.gradle。这种配置是直截了当的,但错误信息有点神秘。例如,我使用的是android-map-utils项目,并且必须将它包含在我的settings.gradle中,方法是添加这两行。
include ':android-map-utils'
project(':android-map-utils').projectDir = new File(settingsDir, '..\\..\\modules\\android-maps-utils-master\\library')
库的路径是相对于我项目的settings.gradle文件。然后,我只是在我的应用程序的build.gradle文件的依赖项中引用它,就像这样
...
dependencies {
....
compile project(':android-map-utils')
....
}
我建议一次导入一个模块,编译并检查它。
答案 8 :(得分:0)
如果假设您在删除某些节点模块后发现了此错误,则理想情况下不应该在build.gradle(Module:app)下显示该库。 可以手动删除它并再次同步项目。
答案 9 :(得分:0)
我也遇到了同样的问题,问题是以下某些文件中缺少库。
settings.gradle,app / build.gradle,package.json,MainApplication.java
假设库是react-native-vector-icons,那么它应该在以下文件中提及;
编译项目(':react-native-vector-icons')
包括':react-native-vector-icons' project(':react-native-vector-icons')。projectDir = new File(rootProject.projectDir,'.. / node_modules / react-native-vector-icons / android')
导入依赖项: import com.oblador.vectoricons.VectorIconsPackage;
然后添加: getPackages()方法中的新VectorIconsPackage()。
答案 10 :(得分:0)
消除几个反应本机依赖性即可解决问题
删除这些行即可解决问题。该行是由rnpm链接创建的,但存在错误。
<input type='file' name='image[]' accept='image/*' multiple/>