Error: Desafortunadamente no puede tener módulos Java que no sean Gradle y> módulos Android-Gradle en un proyecto

229

Tengo un proyecto IntelliJ 14.1.2 que consta de dos módulos: uno es un módulo basado en Android Gradle y el otro es un módulo Spring basado en Java con Maven.

gps-trackman.v1 es mi proyecto raíz y no he configurado ninguna salida o faceta para este proyecto. La aplicación es mi módulo Android Gradle y he configurado Android y Android-Gradle Facet para este proyecto y gps-trackman no es mi proyecto Spring Maven. Quiero poder construir todo junto. ¿Es posible?

Ahora recibo este mensaje de error en mi IntelliJ Eventlog

Módulos no compatibles detectados: la compilación no es compatible con los siguientes módulos: gps-trackman, gps-trackman.v1, aplicación. Desafortunadamente, no puede tener módulos Java que no sean Gradle y módulos Android-Gradle en un proyecto.

El proyecto 'gps-trackman.v1' no está basado en Gradle

¿Es este error solo debido a una configuración incorrecta de mi proyecto o realmente no es posible tener un módulo Maven y un módulo Gradle en un proyecto?

¿Tengo que configurar alguna Faceta para el proyecto raíz? Alternativamente, ¿tengo que convertir mi maven a gradle?

kamokaze
fuente
¿Te opones a convertir el proyecto maven a gradle?
RaGe
Sí, luego intenté convertir el proyecto Maven en un proyecto Gradle, pero eso resultó en muchos otros errores, por lo que preferiría quedarme con Maven ...
kamokaze
1
Muy bien, solo quería señalar que es posible agregar un proyecto normal de Java Gradle como un subproyecto a un proyecto de Android.
RaGe
1
¿Son los problemas que ha descrito el boleto de JetBrains YouTrack IDEA-122904 ? Si es así, ¿ayuda alguna de las soluciones enumeradas allí?
3
Posible duplicado del estudio
George Hilliard

Respuestas:

395

1- cierra el proyecto

2- cerrar Android StudioIDE

3- borra el .ideadirectorio

4- eliminar todos los .imlarchivos

5- abre Android StudioIDE e importa el proyecto

Responde desde aquí

ahmednabil88
fuente
14
funcionó para mí con solo la eliminación de .idea dir, en astudio 3.5
Leres Aldtai
3
¿Funciona esto solo en versiones específicas de Android Studio?
Stealth Rabbi
Tenga cuidado al eliminar el directorio .idea. Hay muchas cosas en ese directorio que se perderán y no se generarán automáticamente cuando reinicie A / S. Específicamente codeStylesydictionaries
tir38
Funciona también para AS 3.6.3. Acabo de cerrar el IDE, eliminé los archivos y volví a abrir. No tuve que cerrar el proyecto ni importarlo (creo que el IDE lo hace de todos modos).
JCarlosR
@ tir38, creo que todos los archivos en la carpeta .idea se generan automáticamente. No necesita preocuparse mientras borra. Android Studio crea cada archivo por sí mismo.
Neo
86
  1. Vaya a Archivo -> Invalidar cachés / reiniciar.
  2. Cierra el proyecto.
  3. Vaya a la carpeta del proyecto y elimine la carpeta .idea.
  4. Elimine YourProjectName.iml en la carpeta del proyecto.
  5. Eliminar app.iml en la carpeta de la aplicación.
  6. Abra Android studio -> abra el proyecto existente y luego seleccione su proyecto.
  7. El error de configuración de carga y el error detectado de módulos no compatibles desaparecerán.
Gagan Raghunath
fuente
1
Gracias. Me ayudó. ¡Y la solución es bonita! :) Pero con: Proyecto de sincronización con archivos
Gradle
¿Qué archivo configurará en .gitignore? ¿Puede dar sugerencias para el nuevo proyecto?
MohanRaj S
1
1.a Después de seleccionar "Invalidar cachés / reiniciar" aparece un cuadro de diálogo. Asegúrese de elegir solo la opción "invalidar" y cierre el estudio de Android manualmente. Si elige "invalidar + reiniciar", Android Studio se reiniciará antes de que pueda completar los pasos 3-5.
Stuart Schechter
@MohanRajS, todos los archivos que se generan automáticamente deben ser ignorados. Por ejemplo, cada archivo iml, carpeta .idea, carpeta .gradle, carpeta de compilación, .classpath, .project, .log, .apk, .aab, etc.
Neo
19

En mi caso, settings.gradle contenía una configuración no válida.

Cambié:

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

A:

include ':app'

El error se fue. Entonces, tal vez revise su settings.gradle para detectar posibles errores. Si esto no funciona, intente eliminar el caché y otros consejos.

Michal Zhradnk Nono3551
fuente
1
Esto me lo arregló
Code Wiget
17

En primer lugar, debe actualizar a Android Studio Fuente: https://code.google.com/p/android/issues/detail?id=77983

Luego debe ir a Archivo -> Invalidar cachés / reiniciar -> Invalidar cachés y reiniciar.

Luego intente construir la aplicación nuevamente.

Encontré esta respuesta aquí

Jagruttam Panchal
fuente
8
No uso el estudio de Android. este no es mi caso!
kamokaze
1
Estaba obteniendo "Módulos no compatibles detectados: la compilación no es compatible con los siguientes módulos: móviles. Desafortunadamente no puede tener módulos Java que no sean Gradle y módulos Android-Gradle en un proyecto". Esto me ayudó. ¡Gracias!
JC Carrillo
14
  1. Cerrar el proyecto
  2. Simplemente elimine los modules.xml módulos.xml en la carpeta .idea.
  3. Abre el proyecto nuevamente.
Nauman Khaliq
fuente
1
Trabajó para mí con Android Studio 4.0
Afilu
12

Intenté todo lo anterior. No funcionó

Esto es lo que funcionó. Vaya al archivo llamado modules.xml

Eliminar todos los módulos allí. Limpiar y reconstruir.

The Fluffy T Rex
fuente
3
Funcionó para mi. Tuve este error en un módulo Gradle que luego se eliminó, pero el error se siguió informando sin importar qué. Eliminar el módulo de modules.xml funcionó mientras que todo lo demás no.
3c71
10

Asegúrese de haber agregado su módulo al settings.gradlearchivo:

include ':app'
include ':your-module'
Egor Neliuba
fuente
10

Hola, desarrolladores, aquí está la solución definitiva a este error:

SOLUCION 1

Paso 1 Vaya a Archivo -> Invalidar cachés / reiniciar.

Paso 2 Cierra el proyecto.

Paso 3 Vaya a la carpeta del proyecto y elimine la carpeta .idea.

Paso 4 Elimine YourProjectName.iml en la carpeta del proyecto.

paso 5 Verás una carpeta debajo de la carpeta graddle, Eliminar la carpeta YourProjectName (contiene otro archivo YourProjectName.iml).

Paso 6 Abra Android studio -> abra el proyecto existente y luego seleccione su proyecto.

** **

SOLUCIÓN 2

** **

Paso 1: Abra el proyecto dañado (el que muestra el error).

Paso 2: Abra el archivo system.gradle.

Paso 3: agrega esta línea de código include ':app'.

Paso 4: haz clic en la sincronización para sincronizar el archivo gradle.

¡FELICIDADES! ERROR FINALMENTE IDO

Obot Ernest
fuente
1
la eliminación de la carpeta .idea y el archivo .iml ayudaron.
Redar
2
¿Cómo es esto diferente de las respuestas anteriores? Todo lo que hiciste fue compilar las dos principales respuestas existentes.
tir38
7

Presione Ctrl-Alt-S> Desmarque el complemento "Soporte de Android"

(Ojalá pudiera decirle exactamente por qué funciona esto, pero no puedo. Si desea desarrollar para Android, intente usar Android Studio, que también está hecho por Jetbrains).

Región39
fuente
2
File -> Settings (= STRG+ALT+S) -> Plugins -> uncheck "Android Support" Página de ayuda de JetBrains
schemacs
1
En mi caso no tenía dicho complemento, pero tenía el "complemento Markdown" marcado como rojo incompatible, lo desinstalé y resolví el problema después de reiniciar AS.
djdance
6

Tuve el mismo problema con Android Studio 3.3 Canary 13.

Pude resolverlo siguiendo estos pasos:

  • Vaya a la configuración del módulo y elimine su módulo de la lista
  • Edite settings.gradle y elimine su módulo de allí también
  • Mueva físicamente el directorio del módulo fuera del proyecto (a su escritorio, por ejemplo)
  • Luego, en la configuración del módulo, agregue nuevamente un módulo y seleccione como tipo 'Importar proyecto Gradle' en el que seleccione la carpeta del módulo que ha movido a su escritorio (o en cualquier otro lugar)

Cuando complete estos pasos, el módulo se copiará nuevamente en su proyecto, AS comenzará a sincronizar Gradle nuevamente y eso tendrá éxito sin errores :-) Verifique su estado de GIT y verá tan pronto como agregue su directorio de módulo a GIT nuevamente que nada ha cambiado a su directorio de trabajo. Entonces, es puramente un problema con AS que de alguna manera se desincroniza ...

Basé mi solución en este comentario: https://issuetracker.google.com/issues/37008041#comment3

dirkvranckaert
fuente
3

Por alguna razón, no puede eliminar la carpeta .idea

La mejor manera es

  • Eliminar todos los archivos dentro de .idea
  • Eliminar .idea
Francis Eyogo
fuente
2

Esta solución funcionó para mí Android Studio 3.3.2.

  1. Elimine el archivo .iml del directorio del proyecto.
  2. En el estudio de Android Archivo-> invalidar cachés / reiniciar.
  3. Limpie y reconstruya el proyecto si la construcción automática arroja un error.
Ashutosh dwivedi
fuente
2

Ninguno de los anteriores funcionó para mí, pero probé algo al azar y funcionó.

  1. Copie el directorio del proyecto dañado.
  2. Pégalo en otro lugar.
  3. Importarlo en Android Studio. (Archivo-> Nuevo-> Importar proyecto)
  4. Y el proyecto sin corrupción se restaurará.

PD: debe tener un proyecto original dañado. (Significa, cópielo sin alterar la estructura del proyecto)

Shubham Singh
fuente
2

vaya a .ideaabrir el modules.xmlarchivo de carpeta y vea por sí mismo qué módulo está allí que no está utilizando en el proyecto actualmente.

Muhammad Kamran Latif Raza
fuente
2

Simplemente puede degradar su dependencia de Gradle para que se ajuste a su versión actual de Android Studio.

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

Trabajó para mi.

Emmanuel Afolabi
fuente
1

Para mí, mi proyecto estaba muy dañado. No sé cómo llegué a ese estado. Lo que observé fue que varios archivos .gradle y proguard tenían un paquete completo de contenido xml. Afortunadamente, el archivo físico tenía el contenido correcto, pero Android Studio lo mostraba como un archivo xml que parecía pertenecer a algunos datos res xml generados. Cosas como "Sincronizar con el sistema de archivos" o "sincronizar el proyecto con el archivo gradle", "invalidar caché y reiniciar" o "limpiar gradlew" no resolverían el problema. Incluso reemplacé los datos xml falsos que se muestran en los scripts de gradle con el contenido original, pero eso tampoco ayudó. Intenté algunos de los consejos dados anteriormente, pero no funcionaron o parecían demasiado complejos para que sintiera que mi proyecto volvería a un estado bien formado.

Así que elegí crear un nuevo proyecto en blanco. Utilizando el explorador de archivos, copié todos los módulos del proyecto dañado en el nuevo proyecto (una copia y un pegado simple y antiguo). También reemplacé los archivos "settings.gradle" y raíz "build.gradle" del nuevo archivo con contenido del archivo anterior. Una vez hecho esto, debe ejecutar "Proyecto de sincronización con archivos gradle y es bueno a bueno. Si por casualidad la raíz de su proyecto tiene algún contenido que agregó físicamente, también tendría que copiarlo.

Entonces eso te hace volver a trabajar. No estoy seguro de qué causó que mi proyecto se corrompiera, pero creo que podría tener que ver con que la computadora portátil entrara en modo de suspensión. Mi computadora portátil no me permitía despertarme del sueño y la única forma de despertarme era apagarlo nuevamente. Tuve algunos proyectos abiertos algunas veces cuando eso sucedió. Así que esa es mi mejor suposición sobre cómo el proyecto podría haberse corrompido.

Tom Rutchik
fuente
1

Copie los archivos del proyecto de la fuente original y péguelo en algún lugar y luego impórtelo desde Android Studio.

Akash Gupta
fuente
1

He estado lidiando con este problema por un tiempo cada vez que intenté abrir un proyecto.

Siempre recibo este error, aunque sabía que no había realizado ningún cambio que debería haber causado esto, aparte de exportar a zip.

Arreglar:

  • Hacer un nuevo proyecto o proyecto abierto que funcione
  • Vaya a archivo> abrir> "su proyecto"
  • Asegúrese de que su proyecto ficticio permanezca abierto. El proyecto que estaba recibiendo errores debería abrirse en una nueva ventana.

Esto me lo arregló sin hacer ningún cambio ni eliminar nada.

Finks
fuente
0

el error explica todas las cosas, la idea se confunde entre gradle y maven .

intenta crear un nuevo proyecto con dos gradle módulos , puede construir una aplicación de primavera con gradle como maven.

ver este ejemplo de guías de primavera

Mohamd Ali
fuente
0

La siguiente solución que encontré en este foro funcionó de maravilla:

1- cierra el proyecto

2- cierra Android Studio IDE

3- elimina el directorio .idea en el directorio donde reside tu aplicación

4- elimina todos los archivos .iml en el directorio donde reside tu aplicación

5- abre Android Studio IDE e importa el proyecto

Suresh Doraiswamy
fuente