Android Studio 3.0に移行しました。そのため、プロジェクトは ":animator"という名前のモジュールをコンパイルできなくなり、このエラーが表示されます。
Error:Unable to resolve dependency for
':app@dexOptions/compileClasspath': Could not resolve project
:animators. <a
href="openFile:/home/mobilepowered/MobilePowered/MyInnovalee/trunk17-10-2017/app/build.gradle">Open
File</a><br><a href="Unable to resolve dependency for
':app@dexOptions/compileClasspath': Could not resolve project
:animators.">Show Details</a>
詳細を表示すると、このログが表示されます。
Unable to resolve dependency for ':app@dexOptions/compileClasspath':
Could not resolve project :animators.
Could not resolve project :animators. Required by:
project :app
Unable to find a matching configuration of project :animators:
- Configuration 'debugApiElements':
- Required com.Android.build.api.attributes.BuildTypeAttr 'dexOptions' and found incompatible value 'debug'.
- Required com.Android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and
found compatible value 'Aar'.
- Found com.Android.build.gradle.internal.dependency.VariantAttr 'debug' but
wasn't required.
- Required org.gradle.api.attributes.Usage 'Java-api' and found compatible value 'Java-api'.
- Configuration 'debugRuntimeElements':
- Required com.Android.build.api.attributes.BuildTypeAttr 'dexOptions' and found incompatible value 'debug'.
- Required com.Android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and
found compatible value 'Aar'.
- Found com.Android.build.gradle.internal.dependency.VariantAttr 'debug' but
wasn't required.
- Required org.gradle.api.attributes.Usage 'Java-api' and found incompatible value 'Java-runtime'.
- Configuration 'releaseApiElements':
- Required com.Android.build.api.attributes.BuildTypeAttr 'dexOptions' and found incompatible value 'release'.
- Required com.Android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and
found compatible value 'Aar'.
- Found com.Android.build.gradle.internal.dependency.VariantAttr 'release' but
wasn't required.
- Required org.gradle.api.attributes.Usage 'Java-api' and found compatible value 'Java-api'.
- Configuration 'releaseRuntimeElements':
- Required com.Android.build.api.attributes.BuildTypeAttr 'dexOptions' and found incompatible value 'release'.
- Required com.Android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and
found compatible value 'Aar'.
- Found com.Android.build.gradle.internal.dependency.VariantAttr 'release' but
wasn't required.
- Required org.gradle.api.attributes.Usage 'Java-api' and found incompatible value 'Java-runtime'.
Android Studio 2.3(AS)では、プロジェクトはうまく機能し、私はアプリを実行することができます。 ASをAndroid Studio 3.0にアップデートした後。私もライブラリとビルドの種類のために以下のようなエラーを得ました。
Unable to resolve dependency for ':app@dexOptions/compileClasspath': Could not resolve project : library_Name.
Unable to resolve dependency for ':app@release/compileClasspath': Could not resolve project : library_Name.
問題を解決するには、単純に。
これまで
buildTypes{
debug{ ... }
release{ ... }
}
あなたの(app)build.gradleファイルに、あなたは以下のように同じ名前ですべてのbuildTypes{ }
を含める必要があります
buildTypes{
debug{ ... }
release{ ... }
}
プロジェクトに含まれるすべてのライブラリ/モジュールのbuild.gradle
ファイルに。
プロジェクトをクリーンにして再ビルドすると、問題は解決します。
それでも問題は解決しない、gradle-wrapper.propertiesを
distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.Zip
プロジェクトに参加していることを確認してください
Offline work
チェックボックス。公式の移行ガイド に記載されているように、このエラーは次の場合に発生します。
あなたのアプリには、ライブラリの依存関係がしないビルドタイプが含まれています
Android {
buildTypes {
release {
...
}
dexOptions {
...
// release & debug is in project animators
matchingFallbacks = ['release', 'debug']
}
debug {
...
}
}
}
マッチング設定のフォールバック を設定するのは明らかにそれを解決するための正しい方法です。
すべて修正
compile project(':library:yourproject')
に
implementation project(path: ':library:yourproject', configuration:'default')
あなたのアプリのbuild.gradleで。設定の行に注意してください。
私はこの問題に多くの時間を費やしました、そして、上記の解決策のどれも私のために働きません。ビルドタイプの名前と数も、アプリとライブラリプロジェクトの両方でまったく同じでした。
私がしていた唯一の間違いは - 図書館プロジェクトのbuild.gradleでは、lineを使っていた
プラグインを適用する: 'com.Android.application'
この行があるはずですが -
プラグインを適用する: 'com.Android.library'
この変更を加えた後、このエラーは解決されました。
溶液:
Gradleの究極版をダウンロードする
http://services.gradle.org/distributions/ /
gradle-4.x-rc-1-all.Zip.sha256 09-Jan-2018 01:15 +0000 64.00B
配布を解凍する
Android Studioに移動 - >ファイル - >設定 - > Gradle - > Use local gradle distribution ファイルを検索してOK
Gradle:appこれを書いて、実装(パス: ':アニメーター'、設定: 'デフォルト')
dependencies {
.
.
implementation project(path: ':animators', configuration: 'default')
}
オフライン作業のチェックを外す から matchingFallbacks まですべて試してみました。しかし何もうまくいきませんでした。
次に、app.gradleの依存関係で、
の代わりに
実装プロジェクト( ':lib-name')
私が使った、
実装プロジェクト(パス: ':lib-name'、構成: 'default')
例:implementation project(path:':myService', configuration: 'default')
そしてそれは魅力のように働いた。 :)
serviceと一緒に依存関係モジュールを追加していましたが、AOSPプロジェクトの一部としてライブラリを作っていません。
念のため、誰かを助けます。
問題を解決した方法は次のとおりです。
の代わりに
compile project(':library_name')
compile project(':library_name')
私はアプリのgradleで使用しました
implementation project(':library_name')
implementation project(':library_name')
そして、例えば私のビルドタイプでは
demoTest {
.........
}
この行を追加しました
demoTest {
matchingFallbacks = ['debug', 'release']
}
私は同じ問題を抱えていて、 'mavenCentral()'をbuild.gradleに追加することによってそれを解決しました(プロジェクト)
allprojects {
repositories {
...
mavenCentral()
}
}
でも、私は同じ問題に直面しています。
私は上記の解決策2を新しいgⓇradle-4.1で参照することで問題を解決しました。
Amazonを介してリソースをダウンロードすることで問題の解決に役立ったようです。appcompatライブラリに問題があります。 appcompat互換のサポートライブラリがシステムにダウンロードされていることを確認してください。私が感じていることは、それは単にmavenを通してダウンロードされないリソースであり、コンパイルエラーの問題を引き起こしています。問題を解決するために、リソースがローカルドライブにあることを確認してください。
と遊びました
repositories {
maven {
url "https://s3.amazonaws.com/repo.commonsware.com"
}
jcenter()
}
dependencies {
implementation fileTree(dir: 'libs', include: \['*.jar'\])
implementation 'com.Android.support:appcompat-v7:26.0.0-alpha1'
implementation 'com.Android.support:support-v4:26.0.0-alpha1'
implementation 'com.Android.support.constraint:constraint-layout:1.0.2'
}
apply plugin: 'com.Android.application'
repositories {
maven {
url "https://s3.amazonaws.com/repo.commonsware.com"
}
jcenter()
}
Android {
compileSdkVersion 26
defaultConfig {
applicationId "com.cognizant.interviewquestions.cognizantiqpractice2"
minSdkVersion 18
targetSdkVersion 26
versionCode 1
versionName "1.0"
javaCompileOptions {
annotationProcessorOptions {
includeCompileClasspath false
}
}
dexOptions {
javaMaxHeapSize "4g"
preDexLibraries = false
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: \['*.jar'\])
implementation 'com.Android.support:appcompat-v7:26.0.0-alpha1'
implementation 'com.Android.support:support-v4:26.0.0-alpha1'
implementation 'com.Android.support.constraint:constraint-layout:1.0.2'
}
---------------------------------------------------------------------------
Gradle設定で 「オフライン作業」が無効になっていることを確認してください ([設定] - > [ビルド]、[実行]、[展開] - > [ビルドツール] - > [Gradle])。
私はこの間違いをしました。私は、グラドルの構築をスピードアップするためのガイドに従って、オフライン作業オプションをオンにしました。これが有効になっていると、Gradleは新しい依存関係をダウンロードすることができないため、 "依存関係を解決できません"というエラーが発生します。
私は2つのタイプの解決策を見つけました:
古いgⓇradle-3.3を使った解決策:
プロジェクトをAndroid Studio 3.0で実行するための最初の一時的な解決策として、以前のAndroid Studio 2.3の古い設定を維持します。
distributionUrl = https://services.gradle.org/distributions/gapradle-3.3-all.Zip、compileSdkVersion 25 **および** buildToolsVersion "25.0.3"、クラスパス 'com.Android.tools.build:gradle: 2.3.3
新しいgⓇradle-4.1による解決策:
gradle 4.1 および classpath com.Android.tools.build:gradle:3.0.0 ' の新機能を操作するには、次のリンクをたどります https:// developer .Android.com/studio/build/gradle-plugin-3-0-0-migration.html 。だから、それらは私の実装です:
Gradle-wrapper.propertiesファイルで:
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.Zip
プロジェクトのファイルbuild.gradle
内で:
buildscript {
repositories {
jcenter()
google()
}
dependencies {
classpath 'com.Android.tools.build:gradle:3.0.0'
//classpath 'me.tatarka:gradle-retrolambda:3.3.1' remove this line
}
}
allprojects {
repositories {
google()
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
アプリのファイルbuild.gradleで、
apply plugin: 'com.Android.application'
//apply plugin: 'me.tatarka.retrolambda' remove this line
repositories {
maven {
url "https://s3.amazonaws.com/repo.commonsware.com"
}
jcenter()
mavenCentral()
maven { url "https://jitpack.io" }
}
Android {
compileSdkVersion 26
buildToolsVersion "26.0.2"
defaultConfig {
applicationId "com.imennmn.myprojectid"
minSdkVersion 21
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "Android.support.test.runner.AndroidJUnitRunner"
/**
* Enabling multidex support.
*/
multiDexEnabled true
missingDimensionStrategy 'minApi' , 'minApi24'
javaCompileOptions {
annotationProcessorOptions {
includeCompileClasspath true
}
}
dexOptions {
javaMaxHeapSize "4g"
preDexLibraries = false
}
}
buildTypes {
release {
shrinkResources false
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.txt'
}
}
lintOptions {
checkReleaseBuilds false
abortOnError false
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
configurations.all {
resolutionStrategy.force 'com.google.code.findbugs:jsr305:1.3.9'
}
/**
* Solve the problem when using multiple free source libs
* NOTICE or LICENSE files cause duplicates
*/
packagingOptions {
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/NOTICE.txt'
exclude 'META-INF/DEPENDENCIES.txt'
exclude 'META-INF/LICENSE'
exclude 'META-INF/NOTICE'
exclude 'META-INF/DEPENDENCIES'
//exclude duplicate butterknife and parceler libs
exclude 'META-INF/services/javax.annotation.processing.Processor'
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/rxjava.properties'
}
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation files('libs/motwin-Android-sdk-3.2.0-RELEASE-TLS.jar')
implementation files('libs/notifmanager-Android-lib-3.1.0-RELEASE.jar')
implementation files('libs/commons-lang-2.4.jar')
androidTestImplementation('com.Android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.Android.support', module: 'support-annotations'
})
implementation 'com.Android.support:appcompat-v7:26.0.2'
implementation 'com.Android.support:support-v4:26.0.2'
implementation 'com.Android.support:design:26.0.2'
implementation 'com.Android.support:multidex:1.0.2'
api 'com.jakewharton:butterknife:7.0.1'
implementation 'de.hdodenhof:circleimageview:2.1.0'
implementation 'com.Android.support:percent:26.0.2'
implementation 'com.google.Android.gms:play-services-maps:11.4.2'
implementation 'com.github.bumptech.glide:glide:3.7.0'
implementation 'com.google.code.gson:gson:2.8.1'
testImplementation 'junit:junit:4.12'
implementation 'com.facebook.rebound:rebound:0.3.8'
implementation 'com.google.Android.gms:play-services-gcm:11.4.2'
implementation 'io.reactivex.rxjava2:rxjava:2.1.1'
implementation 'io.reactivex.rxjava2:rxandroid:2.0.1'
implementation project(':animators')
// Retrofit2 & XmlConverter
implementation 'com.squareup.retrofit2:retrofit:2.3.0'
implementation 'com.squareup.retrofit2:converter-gson:2.1.0'
implementation 'com.squareup.retrofit2:adapter-rxjava:2.1.0'
implementation('com.squareup.retrofit2:converter-simplexml:2.3.0') {
exclude group: 'xpp3', module: 'xpp3'
exclude group: 'stax', module: 'stax-api'
exclude group: 'stax', module: 'stax'
}
implementation 'com.squareup.okhttp3:okhttp:3.4.1'
implementation 'com.squareup.okhttp3:logging-interceptor:3.4.1'
//Library to reports crash
implementation('ch.acra:acra:4.5.0') {
exclude group: 'org.json'
}
implementation 'com.github.kenglxn.QRGen:Android:2.3.0'
}
ライブラリアニメータのbuild.gradleでは、targetSdkVersionを26にアップグレードします。
apply plugin: 'com.Android.library'
Android {
compileSdkVersion 26
buildToolsVersion '26.0.2'
defaultConfig {
minSdkVersion 21
targetSdkVersion 26
versionCode 1
versionName "1.0"
}
}
dependencies {
implementation "com.Android.support:support-compat:26.0.2"
implementation "com.Android.support:support-core-ui:26.0.2"
implementation "com.Android.support:recyclerview-v7:26.0.2"
}
app.gradleファイルの依存関係を古いものと同様にリセットするだけです
androidTestImplementation 'com.Android.support.test:runner:0.5'
androidTestImplementation 'com.Android.support.test.espresso:espresso-core:2.2.2'
新しいものに
androidTestImplementation 'com.Android.support.test:runner:1.0.1'
androidTestImplementation 'com.Android.support.test.espresso:espresso-core:3.0.1'
私は同じ問題に出会い、解決しました。
私の状況により、アプリプロジェクトのbuild.gradle
ファイルには以下の抜粋が含まれていると思います。
Android {
...
buildTypes {
debug {...}
release {...}
dexOptions {...}
}
}
しかし実際には、dexOptions
はビルドタイプではないので、dexOptions
セクションをbuildTypes
の外側に移動する必要があります。
Android {
...
dexOptions {
...
}
buildTypes {
debug {...}
release {...}
}
}
誰かに役立つことを願っています。
私の場合、私が抱えていた問題は、インポートしようとしていた依存関係が原因でした(BottomNavigationViewEx)。
この依存関係はjitpack.ioとmaven.google.comからダウンロードする必要があり、私はこの設定をbuildscriptセクションに入れていました。
buildscript {
repositories {
google()
jcenter()
maven { url "https://jitpack.io" } // this is incorrect
maven { url "https://maven.google.com" } // this is incorrect
}
dependencies {
classpath 'com.Android.tools.build:gradle:3.1.2'
}
}
それが間違っていた、私はこれら2本のmavenの行を削除して正しいセクション「allprojects」に含める必要があります。
allprojects {
repositories {
google()
jcenter()
maven { url "https://jitpack.io" }
maven { url "https://maven.google.com" }
}
}
それが私にとって同じように誰かに役立つことを願っています。
私はそれがgradle-wrapper.properties
ファイルからだと思います:配布URLをdistributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.Zip
にし、次のことにアップグレードしないでください:distributionUrl=https\://services.gradle.org/distributions/gradle-4 ....
Gradleのバグのようです。これで問題は解決しますが、解決策ではありません。この問題を解決する新しいバージョンを待つ必要があります。
プロジェクトのbuild.gradleで クラスパス 'com.Android.tools.build:gradle:2.3.3' 代わりに クラスパス 'com.Android.tools.build:gradle:3.0.0' を設定します。
Gradle-wrapper.propertiesに https://services.gradle.org/distributions/gradle-3.3-all.Zip 代わりに https://services.gradle.org/distributions/gradle-4.1.2を設定します。 -all.Zip
アプリbuild.gradleにproductFlavors {}を追加することで問題は解決しました。下記参照:
buildTypes {
release {
...
}
}
productFlavors {
}
implementation 'com.Android.support:appcompat-v7:27+'
をimplementation 'com.Android.support:appcompat-v7:+'
に変更するとうまくいきました
KotlinでIntellij 2019 CEを使用しています
Step 1:
1.Open the Preferences, by clicking File > Settings (on Mac, Android Studio > Preferences).
2.In the left pane, click Build, Execution, Deployment >> Gradle.
3.Uncheck/disable the Offline work checkbox.
4.Click Apply or OK.
Step 2:
downgrade the gradle-wrapper.properties content which you can access this
file directory by clicking on CTRL + SHFT +R KEY
e.g from
distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.Zip
to
distributionUrl=https\://services.gradle.org/distributions/gradle-4.0-all.Zip
or to any lower version like /gradle-3.9-all.Zip or /gradle-3.8-all.Zip
ライブラリには2つのフレーバーがありました。アプリのGradleにも同じフレーバーが必要です
インターネットに接続してAndroid Studio 3.0.1を起動してみました。 Androidスタジオは自動的にGradleビルド通知に表示されていたリンクから何かをダウンロードし始めました。これは確実な答えだとは言えませんが、試してみてください。
このスレッドは少し疑問に思ったようですが、元の質問に関しては、両方のbuild.gradleファイルにbuildTypeを含める必要があるだけでなく、両方にproductFlavors(もちろん使用する場合)が必要ですbuild.gradleファイルも同様です。
このコードをgradleに変更します。
compile project(':yourLibrary')
に
implementation project(path: ': yourLibrary', configuration:'default')
[ファイル] - >右クリック - > [新規] - > [モジュール] - > [Eclipse ADTプロジェクトのインポート] - > [ライブラリの参照] - > [終了]からライブラリを追加します。
implementation project(':library')
最後に次のコードを設定gradleに追加します。
include ':app', ':library'
これは、誤ったプラグインタイプを使用する機能モジュールへの参照を追加したときにも発生することがあります。 com.Android.application
をcom.Android.feature
またはcom.Android.library
に変更するだけです。
私は長い間この種の問題に立ち往生しているので、私は上記の解決策のどれもがうまくいかないことを知っています。
':app @ dexOptions/compileClasspath'の依存関係を解決できません:project:library_Nameを解決できませんでした。
クラスがそこに常駐しているかどうかを確実に二重チェックする必要があります。この点に焦点を当てることで解決策に近づくことができたので、この1つのことは私が推測する多くの人にとって非常に役立つことがわかります。そのフォルダパスに何も存在しない場合は、srcフォルダ、ビルドフォルダなどすべてを取得する必要があります。それをコピーしてプロジェクトを同期/再構築プロジェクトに貼り付けます。願わくは、私の場合はそうしてください。
ありがとう
LinuxでAndroid Studioを使用している場合:
そのページでHome/Android Studio Projects folder/App name folder
端末を開き、次のように入力します。
./gradlew -Dhttp.proxyHost
有効なディレクトリにJava_HOME
が設定されているかどうかを確認し、有効な場所が設定されていない場合は、最後にプロジェクトを再ビルドします。
注:それでもうまくいかない場合は、Gradle Cacheフォルダまたはそのすべてを削除して、Android Studioでもう一度ダウンロードしてください。
Android Studioを3.3にアップデートした後。 Firebase JobDispatcherをロードしようとしたときに、この問題に直面しました。 gradle.propertiesにこのリンクを追加すると問題が解決しました
distributionUrl=https://services.gradle.org/distributions/gradle-4.1-all.Zip
私の場合、そうでした:
「:app @ debug/compileClasspath」の依存関係を解決できません:アーティファクトの変換に失敗しました...
私は10のソリューションを試しましたが、誰も働いていませんでしたので、私のソリューションはC:\ Users\djdance.gradle\cachesを削除してASを再起動することでした
私は上で与えられたすべての解決策を試しました、そして、それらのどれも私のために働きませんでした、私は私のライブラリーモジュールとアプリモジュールで正確なビルドタイプと製品フレーバーを持っています。
私は私がより低いバージョンのgradleでいくつかのプロジェクトをインポートしようとし、誤ってgradleのインストールを停止しようとしたときに同じエラーが発生します。