[英]Gradle Build Android Project “Could not resolve all dependencies” error
[英]Error “could not resolve project” when including a dependency project from another for an Android build with Gradle
我似乎無法讓Gradle識別Android項目的依賴項。 我設法將其減少到最低限度 ,但我仍然收到錯誤。
如何在另一個項目中包含簡單的庫依賴項?
這是文件夾結構,非常簡單:
- build.gradle
- settings.gradle
+ myproject
- build.gradle
+ mylibrary
- build.gradle
錯誤為“無法解析項目” /“無法找到項目的匹配變體”
command: gradle build
FAILURE: Build failed with an exception.
* What went wrong:
Could not determine the dependencies of task ':mylibrary:preReleaseBuild'.
> Could not resolve all task dependencies for configuration ':mylibrary:releaseRuntimeClasspath'.
> Could not resolve project :mylibrary.
Required by:
project :mylibrary
> Unable to find a matching variant of project :mylibrary:
- Variant 'debugApiElements' capability gradle-test2:mylibrary:unspecified:
- Required com.android.build.api.attributes.BuildTypeAttr 'release' and found incompatible value 'debug'.
- Found com.android.build.api.attributes.VariantAttr 'debug' but wasn't required.
- Required com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and found incompatible value 'Apk'.
- Required org.gradle.usage 'java-runtime' and found incompatible value 'java-api'.
- Variant 'debugBundleElements' capability gradle-test2:mylibrary:unspecified:
- Required com.android.build.api.attributes.BuildTypeAttr 'release' but no value provided.
- Found com.android.build.api.attributes.VariantAttr 'debug' but wasn't required.
- Required com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' but no value provided.
- Required org.gradle.usage 'java-runtime' and found incompatible value 'android-bundle'.
- Variant 'debugMetadataElements' capability gradle-test2:mylibrary:unspecified:
- Required com.android.build.api.attributes.BuildTypeAttr 'release' and found incompatible value 'debug'.
- Found com.android.build.api.attributes.VariantAttr 'debug' but wasn't required.
- Required com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and found incompatible value 'Metadata'.
- Required org.gradle.usage 'java-runtime' but no value provided.
- Variant 'debugRuntimeElements' capability gradle-test2:mylibrary:unspecified:
- Required com.android.build.api.attributes.BuildTypeAttr 'release' and found incompatible value 'debug'.
- Found com.android.build.api.attributes.VariantAttr 'debug' but wasn't required.
- Required com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and found incompatible value 'Apk'.
- Required org.gradle.usage 'java-runtime' and found compatible value 'java-runtime'.
- Variant 'releaseApiElements' capability gradle-test2:mylibrary:unspecified:
- Required com.android.build.api.attributes.BuildTypeAttr 'release' and found compatible value 'release'.
- Found com.android.build.api.attributes.VariantAttr 'release' but wasn't required.
- Required com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and found incompatible value 'Apk'.
- Required org.gradle.usage 'java-runtime' and found incompatible value 'java-api'.
- Variant 'releaseBundleElements' capability gradle-test2:mylibrary:unspecified:
- Required com.android.build.api.attributes.BuildTypeAttr 'release' but no value provided.
- Found com.android.build.api.attributes.VariantAttr 'release' but wasn't required.
- Required com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' but no value provided.
- Required org.gradle.usage 'java-runtime' and found incompatible value 'android-bundle'.
- Variant 'releaseMetadataElements' capability gradle-test2:mylibrary:unspecified:
- Required com.android.build.api.attributes.BuildTypeAttr 'release' and found compatible value 'release'.
- Found com.android.build.api.attributes.VariantAttr 'release' but wasn't required.
- Required com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and found incompatible value 'Metadata'.
- Required org.gradle.usage 'java-runtime' but no value provided.
- Variant 'releaseRuntimeElements' capability gradle-test2:mylibrary:unspecified:
- Required com.android.build.api.attributes.BuildTypeAttr 'release' and found compatible value 'release'.
- Found com.android.build.api.attributes.VariantAttr 'release' but wasn't required.
- Required com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and found incompatible value 'Apk'.
- Required org.gradle.usage 'java-runtime' and found compatible value 'java-runtime'.
我文件的內容如下:
./build.gradle
buildscript {
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.3.2'
}
}
allprojects {
repositories {
google()
jcenter()
}
}
ext {
compileSdkVersion = 28
buildToolsVersion = '28.0.3'
supportLibVersion = '28.0.0'
applicationId = 'com.example'
minSdkVersion = 16
targetSdkVersion = 26
versionCode = 1
versionName = '1.0'
}
./settings.gradle
include ':myproject', ':mylibrary'
./myproject/build.gradle
apply plugin: 'android'
repositories {
mavenCentral()
}
dependencies {
implementation project(':mylibrary')
}
android {
compileSdkVersion rootProject.ext.compileSdkVersion
buildToolsVersion rootProject.ext.buildToolsVersion
defaultConfig {
applicationId rootProject.ext.applicationId
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode rootProject.ext.versionCode
versionName rootProject.ext.versionName
}
buildTypes {
release {}
debug {}
}
}
./mylibrary/build.gradle
apply plugin: 'android'
repositories {
mavenCentral()
}
dependencies {
}
android {
compileSdkVersion rootProject.ext.compileSdkVersion
buildToolsVersion rootProject.ext.buildToolsVersion
defaultConfig {
applicationId rootProject.ext.applicationId + ".mylibrary"
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode rootProject.ext.versionCode
versionName rootProject.ext.versionName
}
buildTypes {
release {}
debug {}
}
}
對於Android庫,應用的插件應為com.android.library
而不是android
,請嘗試替換您的
apply plugin: 'android'
在您圖書館的build.gradle
中
apply plugin: 'com.android.library'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.