Erreur: Malheureusement, vous ne pouvez pas avoir de modules Java non-Gradle et> modules Android-Gradle dans un projet

230

J'ai un projet IntelliJ 14.1.2 composé de deux modules - l'un est un module basé sur Android Gradle et l'autre est un module basé sur Java Spring avec Maven.

gps-trackman.v1 est mon projet racine et je n'ai configuré aucune sortie ni facette pour ce projet. L'application est mon module Android Gradle et j'ai configuré Android et Android-Gradle Facet pour ce projet et gps-trackman n'est pas mon projet Spring Maven. Je veux pouvoir tout construire tous ensemble. C'est possible?

Je reçois maintenant ce message d'erreur dans mon journal des événements IntelliJ

Modules non pris en charge détectés: la compilation n'est pas prise en charge pour les modules suivants: gps-trackman, gps-trackman.v1, app. Malheureusement, vous ne pouvez pas avoir des modules Java non-Gradle et des modules Android-Gradle dans un seul projet.

Le projet 'gps-trackman.v1' n'est pas basé sur Gradle

Cette erreur est-elle uniquement due à une mauvaise configuration de mon projet ou est-il vraiment impossible d'avoir un module maven et un module Gradle dans un projet?

Dois-je configurer des facettes pour le projet racine? Sinon, dois-je convertir mon maven en gradle?

kamokaze
la source
Êtes-vous opposé à la conversion du projet maven en gradle?
RaGe
Oui, j'ai essayé de convertir le projet Maven en projet Gradle, mais cela a entraîné un tas d'autres erreurs, donc je préférerais rester avec Maven ...
kamokaze
1
D'accord, je voulais juste noter qu'il est possible d'ajouter un projet gradle java normal en tant que sous-projet à un projet Android.
RaGe
1
Les problèmes que vous rencontrez sont-ils décrits par le ticket JetBrains YouTrack IDEA-122904 ? Si tel est le cas, l'une des solutions de contournement répertoriées ici vous aide-t-elle?

Réponses:

395

1- clôturer le projet

2- fermer Android StudioIDE

3- supprimer le .idearépertoire

4- supprimer tous les .imlfichiers

5- Ouvrez Android StudioIDE et importez le projet

Répondez d' ici

ahmednabil88
la source
14
travaillé pour moi avec juste la suppression de .idea dir, sur astudio 3.5
Leres Aldtai
3
Est-ce que cela fonctionne uniquement sur des versions spécifiques d'Android Studio?
Stealth Rabbi
Soyez prudent en supprimant le répertoire .idea. Il y a beaucoup de choses dans ce répertoire qui seront perdues et non générées automatiquement lorsque vous relancerez A / S. Plus précisément codeStylesetdictionaries
tir38
Cela fonctionne aussi pour AS 3.6.3. Je viens de fermer l'IDE, de supprimer les fichiers et de rouvrir. Je n'ai pas eu à fermer le projet ni à l'importer (je pense que l'IDE le fait quand même).
JCarlosR
@ tir38, je pense que tous les fichiers du dossier .idea sont générés automatiquement. Pas besoin de s'inquiéter lors de la suppression. Android Studio crée chaque fichier lui-même.
Neo
86
  1. Allez dans Fichier -> Invalider les caches / redémarrer.
  2. Fermez le projet.
  3. Accédez au dossier du projet et supprimez le dossier .idea.
  4. Supprimez YourProjectName.iml dans le dossier du projet.
  5. Supprimez app.iml dans le dossier d'application.
  6. Ouvrez Android studio -> ouvrez un projet existant, puis sélectionnez votre projet.
  7. L'erreur de chargement des paramètres et l'erreur détectée des modules non pris en charge auront disparu.
Gagan Raghunath
la source
1
Remercier. Ça m'a aidé. Et la solution est jolie! :) Mais avec: Projet de synchronisation avec les fichiers Gradle
user_MGU
Quels fichiers seront configurés dans .gitignore, pouvez-vous s'il vous plaît donner des suggestions pour le nouveau projet.
MohanRaj S
1
1.a Après avoir sélectionné "Invalider les caches / redémarrer", une boîte de dialogue apparaît. Assurez-vous de ne choisir que l'option "invalider" et de fermer manuellement Android studio. Si vous choisissez "invalider + redémarrer", Android studio redémarrera avant que vous puissiez effectuer les étapes 3 à 5.
Stuart Schechter
@MohanRajS, tous les fichiers générés automatiquement doivent être ignorés. Par exemple, chaque fichier iml, dossier .idea, dossier .gradle, dossier build, .classpath, .project, .log, .apk, .aab etc.
Neo
19

Dans mon cas, settings.gradle contenait une configuration non valide.

J'ai changé:

include ':app'
rootProject.name='<somthing else>'

À:

include ':app'

L'erreur a disparu. Alors peut-être vérifiez votre settings.gradle pour des erreurs potentielles. Si cela ne fonctionne pas, essayez de supprimer le cache et d'autres conseils.

Michal Zhradnk Nono3551
la source
1
Cela m'a
corrigé
17

Tout d'abord, vous devez mettre à jour vers Android Studio Source: https://code.google.com/p/android/issues/detail?id=77983

Ensuite, vous devez aller dans Fichier -> Invalider les caches / redémarrer -> Invalider les caches et redémarrer.

Essayez ensuite de recréer l'application.

J'ai trouvé cette réponse ici

Jagruttam Panchal
la source
8
Je n'utilise pas Android Studio. ce n'est pas mon cas!
kamokaze
1
Obtenait "Modules non pris en charge détectés: la compilation n'est pas prise en charge pour les modules suivants: mobile. Malheureusement, vous ne pouvez pas avoir des modules Java non-Gradle et des modules Android-Gradle dans un projet" - cela m'a aidé. Merci!
JC Carrillo
14
  1. Fermer le projet
  2. Supprimez simplement le modules.xml dans le dossier .idea.
  3. Ouvrez à nouveau le projet.
Nauman Khaliq
la source
1
A travaillé pour moi avec Android Studio 4.0
Afilu
12

J'ai tout essayé ci-dessus. Ça n'a pas marché.

Voici ce qui a fonctionné. Accédez au fichier appelé modules.xml

Supprimez tous les modules qui s'y trouvent. Nettoyez et reconstruisez.

Le Fluffy T Rex
la source
3
Ça a marché pour moi. J'ai eu cette erreur sur un module Gradle qui a été supprimé par la suite, mais l'erreur a continué d'être signalée quoi qu'il arrive . La suppression du module de modules.xml a fonctionné alors que tout le reste n'a pas fonctionné.
3c71
10

Assurez-vous d'avoir ajouté votre module au settings.gradlefichier:

include ':app'
include ':your-module'
Egor Neliuba
la source
10

Bonjour les développeurs, voici la solution ultime à cette erreur:

SOLUTION 1

Étape 1 Allez dans Fichier -> Invalider les caches / redémarrer.

Étape 2 Fermez le projet.

Étape 3 Accédez au dossier du projet et supprimez le dossier .idea.

Étape 4 Supprimez YourProjectName.iml dans le dossier du projet.

étape 5 Vous verrez un dossier sous le dossier graddle, supprimer le dossier YourProjectName (il contient un autre fichier YourProjectName.iml).

Étape 6 Ouvrez Android studio -> ouvrez un projet existant, puis sélectionnez votre projet.

**

SOLUTION 2

**

Étape 1: Ouvrez le projet corrompu (celui qui affiche l'erreur).

Étape 2: Ouvrez le fichier system.gradle.

étape 3: ajoutez cette ligne de codeinclude ':app' .

Étape 4: cliquez sur la synchronisation pour synchroniser le fichier de notes.

FÉLICITATIONS!!! ERREUR FINALEMENT DISPARUE

Obot Ernest
la source
1
la suppression du dossier .idea et du fichier .iml a aidé.
Redar
2
En quoi est-ce différent des réponses précédentes. Tout ce que vous avez fait, c'est de compiler les deux premières réponses existantes.
tir38
7

Appuyez sur Ctrl-Alt-S> Décochez le plugin "Support Android"

(J'aimerais pouvoir vous expliquer exactement pourquoi cela fonctionne, mais je ne peux pas. Si vous souhaitez développer pour Android, essayez d'utiliser Android Studio, qui est également fabriqué par Jetbrains.)

Région39
la source
2
File -> Settings (= STRG+ALT+S) -> Plugins -> uncheck "Android Support" Page d'aide JetBrains
schemacs
1
Dans mon cas, je n'avais pas un tel plugin, mais j'avais "Markdown plugin" marqué comme rouge incompatible, je l'ai désinstallé et résolu le problème après le redémarrage d'AS.
djdance
6

A eu le même problème avec Android Studio 3.3 Canary 13.

J'ai pu le résoudre en suivant ces étapes:

  • Accédez aux paramètres du module et supprimez votre module de la liste
  • Modifiez settings.gradle et supprimez également votre module
  • Déplacer physiquement le répertoire du module hors du projet (sur votre bureau par exemple)
  • Ensuite, dans les paramètres du module, ajoutez à nouveau un module et sélectionnez comme type 'Import Gradle Project' dans lequel vous sélectionnez le dossier du module que vous avez déplacé vers votre bureau (ou ailleurs)

Lorsque vous aurez terminé ces étapes, le module sera à nouveau copié dans votre projet, AS recommencera à synchroniser Gradle et cela réussira sans erreur :-) Vérifiez votre état GIT et vous verrez dès que vous ajouterez votre répertoire de module à GIT que rien a changé pour votre répertoire de travail. C'est donc purement un problème avec AS qui est en quelque sorte désynchronisé ...

Basé ma solution sur ce commentaire: https://issuetracker.google.com/issues/37008041#comment3

dirkvranckaert
la source
3

Pour une raison quelconque, vous ne pouvez pas supprimer le dossier .idea

La meilleure façon est

  • Supprimer tous les fichiers à l'intérieur de .idea
  • Supprimer .idea
Francis Eyogo
la source
2

Cette solution a fonctionné pour moi Android Studio 3.3.2.

  1. Supprimez le fichier .iml du répertoire du projet.
  2. Dans Android Studio File-> invalidate caches / restart.
  3. Nettoyer et reconstruire le projet si la génération automatique génère une erreur.
Ashutosh dwivedi
la source
2

Rien de ce qui précède n'a fonctionné pour moi mais a essayé quelque chose au hasard et cela a fonctionné.

  1. Copiez le répertoire du projet corrompu.
  2. Collez-le ailleurs.
  3. Importez-le dans Android Studio. (Fichier-> Nouveau-> Projet d'importation)
  4. Et le projet non corrompu est restauré.

PS: Vous devez avoir un projet corrompu d'origine. (Signifie, copiez-le sans altérer la structure du projet)

Shubham Singh
la source
2

goto .ideafolder open modules.xmlfile et voyez par vous-même le module que vous n'utilisez pas actuellement dans le projet.

Muhammad Kamran Latif Raza
la source
2

Vous pouvez simplement rétrograder votre dépendance Gradle pour l'adapter à votre version actuelle du studio Android.

dependencies {
        classpath 'com.android.tools.build:gradle:3.5.2'
        ....
}

A travaillé pour moi.

Emmanuel Afolabi
la source
1

Pour moi, mon projet était très corrompu. Je ne sais pas comment je suis entré dans cet état. Ce que j'ai observé, c'est que plusieurs fichiers .gradle et proguard avaient un ensemble complet de contenu xml. Heureusement, le fichier physique contenait le contenu correct, mais Android Studio l'affichait comme un fichier xml qui semblait appartenir à certaines données res xml générées. Des choses comme "Sync to file system" ou "sync project to gradle file", "invalidate cache and restart" ou "gradlew clean" ne résoudraient pas le problème. J'ai même remplacé les fausses données xml affichées dans les scripts de gradle par le contenu d'origine, mais cela n'a pas aidé non plus. J'ai essayé certains des conseils donnés ci-dessus, mais ils ne fonctionnaient pas ou semblaient trop complexes pour que je pense que mon projet reviendrait dans un état bien formé.

J'ai donc choisi de créer un nouveau projet vierge. En utilisant l'explorateur de fichiers, j'ai copié tous les modules du projet corrompu dans le nouveau projet (un ancien copier-coller simple) J'ai également remplacé les fichiers "settings.gradle" et racine "build.gradle" du nouveau fichier par le contenu de l'ancien fichier. Une fois cela fait, vous devez exécuter "Sync Project avec les fichiers Gradle et vous êtes bon à bon. Si, par hasard, la racine de votre projet contient du contenu que vous avez physiquement ajouté, vous devrez également le copier.

Cela vous permet de vous remettre au travail. Je ne sais pas exactement ce qui a causé la corruption de mon projet, mais je pense que cela pourrait être lié au passage de l'ordinateur portable en mode veille. Mon ordinateur portable ne me permettait pas de me réveiller du sommeil et la seule façon pour moi de me réveiller était de l'éteindre à nouveau. J'ai eu quelques projets ouverts à quelques reprises lorsque cela s'est produit. C'est donc ma meilleure estimation de la façon dont le projet a pu être corrompu.

Tom Rutchik
la source
1

Copiez les fichiers du projet à partir de la source d'origine et collez-les quelque part, puis importez à partir d'Android Studio.

Akash Gupta
la source
1

Traite de ce problème depuis un certain temps à chaque fois que j'essaie d'ouvrir un projet.

Je reçois toujours cette erreur même si je savais que je n'avais apporté aucune modification qui aurait dû provoquer cela en dehors de l'exportation vers zip.

Pour corriger:

  • Faire un nouveau projet ou ouvrir un projet qui fonctionne
  • Allez dans fichier> ouvrir> "votre projet"
  • Assurez-vous que votre projet factice reste ouvert. Le projet sur lequel vous obtenez des erreurs doit être ouvert dans une nouvelle fenêtre.

Cela m'a corrigé sans apporter de modifications ni supprimer quoi que ce soit.

Finks
la source
0

l'erreur expliquer toutes choses, l'idée est confuse entre gradle et Maven .

essayez de créer un nouveau projet avec deux niveaux modules , vous pouvez créer une application de printemps avec gradle comme maven.

voir cet exemple de guides de printemps

Mohamd Ali
la source
0

La solution suivante que j'ai trouvée dans ce forum a fonctionné comme un charme:

1- clôturer le projet

2- Fermez Android Studio IDE

3- Supprimez le répertoire .idea dans le répertoire où réside votre application

4- Supprimez tous les fichiers .iml dans le répertoire où réside votre application

5- Ouvrez Android Studio IDE et importez le projet

Suresh Doraiswamy
la source