web-dev-qa-db-fra.com

app déclare une dépendance de la configuration 'compile' à la configuration 'par défaut' qui n'est pas déclarée dans le descripteur de projet

J'importe un module de bibliothèque nommé "wear" dans mon projet et lors de la construction, j'obtiens ceci:

Error : A problem occurred configuring project ':app'.   
Could not resolve all dependencies for configuration ':app:_debugApk'.   
Project :app declares a dependency from configuration 'compile' to configuration 'default' which is not declared in the descriptor for project :wear.

Qu'est-ce que ça veut dire? Comment puis-je me débarasser de cela?

49
rarahat02

Cette erreur se produit généralement lorsque Gradle ne peut pas trouver un composant particulier. C'est ce que j'ai expérimenté en essayant d'utiliser l'exemple Salesforce React Native Android.

Le message d'erreur que vous obtenez ressemble à celui que vous avez posté ... dans mon cas, c'était

Project :app declares a dependency from configuration 'compile' to configuration 'default' which is not declared in the descriptor for project :libs:SalesforceReact.

J'ai trouvé mon fichier de paramètres Gradle (appelé settings.gradle) dans le répertoire projects Android. Le début ressemblait à ça

rootProject.name = 'SmartSyncExplorerReactNative'

def libsRootDir = new File( settingsDir, '../node_modules/SalesforceMobileSDK-Android/libs' )
include ':app'

include ':libs:SalesforceReact'
project( ':libs:SalesforceReact' ).projectDir = new File( libsRootDir, 'SalesforceReact' )

Dans ce cas, le chemin indiqué dans libsRootDir n'existait pas (car ces bibliothèques provenaient en réalité d'un référentiel différent que j'ai cloné puis pointé sur ce chemin!).

Une fois le chemin corrigé, sauvegardez le fichier de paramètres et relancez à nouveau, tout s’est déroulé sans encombre.

J'espère que cela aide, Jonathan.

37
Jonathan Dawson

J'ai rencontré le même problème lorsque je mets à jour Android studio 3.0 et les solutions suivantes fonctionnent pour moi.

implementation project(path: ':yourModule', configuration: 'default')

Cette solution fonctionnera si vous utilisez Gradle 4.1 et supérieur et Gradle Plugin Version 3.0.0 et supérieur.

J'espère que cela fonctionnera pour vous

12
Saurabh Bhandari

J'ai rencontré un problème similaire avec un ensemble de modules différent. J'ai finalement réussi à le résoudre en réinstallant les modules nécessaires via npm mais avec l'indicateur --save. c'est-à-dire npm install --save module-name

Il semble que si vous avez simplement le fichier .iml dans le dossier du module, il ne suffit pas que le studio Android le résolve.

Bonne chance.

5
John McClelland

J'ai trouvé cette erreur aussi. Donc, j'ai remarqué que mon settings.gradle cherchait un chemin qui n'existait pas. Exemple: (settings.gradle)

project(':YourProjectV1').projectDir = new File('../YourProjectFolderV1/app/');

Cependant, dans mon système de fichiers, le chemin était: ../YourProjectFolderv1

Après avoir synchronisé les noms, le projet était ok!

J'espère que ça aide.

3
Ramon Costa

En fait, le projet lui-même se trouve dans le dossier racine du projet cible:

...
 |-wear
      |-app

Donc, pour l'inclure correctement, vous devez définir un chemin qui pointe vers ce dossier interne:

'setting.gradle':

include ':app', 'MyLibraryProject'
project(':MyLibraryProject').projectDir = new File("X:\\SOME_PATH\\wear\\app")

'app\build.gradle' (Projet principal)

dependencies {
...
compile project(':MyLibraryProject')
...
}
2
Kvant

Dans mon cas, j'ai extrait des mises à jour de git repo et j'ai oublié de faire npm install, alors assurez-vous d'installer toutes les dépendances.

npm install

Si vous utilisez réagit natif, n'oubliez pas de faire le lien (s'il s'agit d'un module natif)

react-native link

0
Ad NAN

pour moi, je viens de modifier la ligne dans settings.gradle: project (': test'). projectDir = new Fichier (rootProject.projectDir, '~/Android-test') pour projeter (': test'). projectDir = new Fichier (rootProject.projectDir, '/ Users/Michael/Android-test'), ce qui signifie d'éviter d'utiliser "~" dans le fichier settings.gradle.

0
Michael

J'ai récemment rencontré un tel problème, quand j'étais dans le compilateur window10 pas de problème, mais j'ai compilé un problème sous Linux, je pense que cette raison avec la plate-forme, j'ai vérifié et trouvé que mon nom de projet est avec le cas Nommé, puis je lettres minuscules nommées unifiées , puis build, trouvé réussi. ^ _ ^.

0
WeiBin Chen

En fait, je voulais juste ajouter le sous-module, alors j’ai exécuté les commandes git suivantes dans le terminal:

git submodule init git submodule update et ensuite une reconstruction!

0
Blaze Gawlik

J'ai rencontré cette erreur aussi, il s'avère qu'un chemin de bibliothèque a été modifié. J'utilise react-native-maps version 1.4

Dans settings.gradle changez le chemin de dépendance de react-native-maps en

... include ':react-native-maps' project(':react-native-maps').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-maps/lib/Android')

Il me semble que le manuel d'installation n'est pas mis à jour

0
Indra Santosa