Błąd: Niestety nie możesz mieć modułów Java innych niż Gradle i> modułów Android Gradle w jednym projekcie


230

Mam projekt IntelliJ 14.1.2 składający się z dwóch modułów - jeden to moduł oparty na Android Gradle, a drugi to moduł Spring Java z Maven.

gps-trackman.v1 to mój projekt root i nie skonfigurowałem żadnych danych wyjściowych ani aspektów dla tego projektu. Ta aplikacja jest moim modułem oceniającym Androida, dla tego projektu skonfigurowałem system Android i Android Gradle Facet, a gps-trackman nie jest moim projektem Spring Maven. Chcę być w stanie zbudować wszystko razem. Czy to możliwe?

Teraz otrzymuję ten komunikat o błędzie w moim dzienniku zdarzeń IntelliJ

Wykryto nieobsługiwane moduły: Kompilacja nie jest obsługiwana dla następujących modułów: gps-trackman, gps-trackman.v1, aplikacja. Niestety nie możesz mieć modułów Java innych niż Gradle i modułów Android Gradle w jednym projekcie.

Projekt „gps-trackman.v1” nie jest oparty na programie Gradle

Czy ten błąd jest spowodowany błędną konfiguracją mojego projektu, czy też naprawdę nie jest możliwe posiadanie modułu maven i modułu Gradle w jednym projekcie?

Czy muszę skonfigurować jakieś aspekty projektu głównego? Alternatywnie, czy muszę przekonwertować swój maven na grad?


Czy jesteś przeciwny zamianie projektu maven na grad?
RaGe

Tak, potem próbowałem przekonwertować projekt Maven na projekt Gradle, ale to spowodowało wiele innych błędów, więc wolałbym zostać z
Mavenem

1
W porządku, chciałem tylko zauważyć, że można dodać regularny projekt klasy Java jako podprojekt do projektu na Androida.
RaGe,

1
Czy problemy, które opisałeś przez bilet JetBrains YouTrack IDEA-122904 ? Jeśli tak, to czy pomaga którekolwiek z wymienionych tam obejść?

Odpowiedzi:


397

1- zamknij projekt

2- zamknij Android Studio IDE

3 - usuń .idea katalog

4 - usuń wszystko .iml pliki

5- otwarte Android Studio IDE i zaimportuj projekt

Odpowiedz stąd


14
pracował dla mnie z usunięciem .idea dir, na astudio 3.5
Leres Aldtai

3
Czy działa to tylko w niektórych wersjach Androida Studio?
Stealth Rabbi

Ostrożnie usuwaj katalog .idea. W tym katalogu znajduje się wiele rzeczy, które zgubią się i nie zostaną automatycznie wygenerowane po ponownym uruchomieniu A / S. W szczególności codeStylesidictionaries
tir38

Działa również dla AS 3.6.3. Właśnie zamknąłem IDE, usunąłem pliki i ponownie otworzyłem. Nie musiałem zamykać projektu ani importować (wierzę, że IDE i tak to robi).
JCarlosR

@ tir38, myślę, że wszystkie pliki w folderze .idea są generowane automatycznie. Podczas usuwania nie musisz się martwić. Android Studio tworzy każdy plik sam.
Neo

86
  1. Przejdź do Plik -> Unieważnij pamięć podręczną / Uruchom ponownie.
  2. Zamknij projekt.
  3. Przejdź do folderu projektu i usuń folder .idea.
  4. Usuń YourProjectName.iml w folderze projektu.
  5. Usuń app.iml z folderu aplikacji.
  6. Otwórz studio Android -> otwórz istniejący projekt, a następnie wybierz swój projekt.
  7. Błąd ładowania ustawień i wykryty błąd Nieobsługiwane moduły znikną.

1
Podziękować. Pomogło mi to. A rozwiązanie jest ładne! :) Ale z: Synchronizuj projekt z plikami Gradle
user_MGU

Jakie pliki zostaną skonfigurowane w .gitignore, czy możesz podać sugestie dotyczące nowego projektu.
MohanRaj S

1
1.a Po wybraniu opcji „Unieważnij pamięć podręczną / uruchom ponownie” pojawi się okno dialogowe. Pamiętaj, aby wybrać opcję „unieważnij” i ręcznie zamknij studio Android. Jeśli wybierzesz opcję „unieważnij + uruchom ponownie”, studio Android uruchomi się ponownie przed wykonaniem kroków 3-5.
Stuart Schechter

@MohanRajS, wszystkie pliki generowane automatycznie muszą zostać zignorowane. Na przykład - każdy plik iml, folder .idea, folder .gradle, folder kompilacji, ścieżka klasy, projekt, log, apk, aab itp.
Neo

19

W moim przypadku ustawienia. Gradle zawierały nieprawidłową konfigurację.

Zmieniłam:

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

Do:

include ':app'

Błąd zniknął. Więc może sprawdź ustawienia.gradle pod kątem potencjalnych błędów. Jeśli to nie zadziała, spróbuj usunąć pamięć podręczną i inne wskazówki.


1
Naprawiłem to dla mnie
Code Wiget

17

Przede wszystkim należy zaktualizować do źródła Android Studio: https://code.google.com/p/android/issues/detail?id=77983

Następnie należy przejść do Plik -> Unieważnij pamięć podręczną / Uruchom ponownie -> Unieważnij pamięci podręczne i uruchom ponownie.

Następnie spróbuj ponownie zbudować aplikację.

Znalazłem tę odpowiedź tutaj


8
Nie używam Androida Studio. to nie moja sprawa!
kamokaze

1
Pojawił się komunikat „Wykryto nieobsługiwane moduły: Kompilacja nie jest obsługiwana dla następujących modułów: mobilne. Niestety nie możesz mieć modułów Java innych niż Gradle i modułów Android w jednym projekcie” - to mi pomogło. Dzięki!
JC Carrillo

14
  1. Zamknij projekt
  2. Po prostu usuń moduły.xml w folderze .idea.
  3. Otwórz projekt ponownie.

1
Pracowałem dla mnie z Android Studio 4.0
Afilu

12

Próbowałem wszystkiego powyżej. Nie działało

Oto, co zadziałało. Przejdź do pliku o nazwie modules.xml

Usuń wszystkie moduły. Oczyść i odbuduj.


3
To zadziałało dla mnie. Miałem ten błąd w module oceny , który został później usunięty, ale błąd był zgłaszany bez względu na wszystko. Usunięcie modułu z module.xml działało, podczas gdy wszystko inne nie działało.
3c71

10

Upewnij się, że dodałeś moduł do settings.gradlepliku:

include ':app'
include ':your-module'

10

Witajcie, programiści tutaj są najlepszym rozwiązaniem tego błędu:

ROZWIĄZANIE 1

Krok 1 Przejdź do Plik -> Unieważnij pamięć podręczną / Uruchom ponownie.

Krok 2 Zamknij projekt.

Krok 3 Przejdź do folderu projektu i usuń folder .idea.

Krok 4 Usuń YourProjectName.iml z folderu projektu.

krok 5 Zobaczysz folder poniżej folderu graddle, Usuń folder YourProjectName (zawiera inny plik YourProjectName.iml).

Krok 6 Otwórz studio Android -> otwórz istniejący projekt, a następnie wybierz swój projekt.

**

ROZWIĄZANIE 2

**

Krok 1: Otwórz uszkodzony projekt (ten pokazujący błąd).

Krok 2: Otwórz plik system.gradle.

krok 3: dodaj ten wiersz kodu include ':app'.

Krok 4: kliknij synchronizację, aby zsynchronizować plik stopni.

GRATULACJE!!! BŁĄD WRESZCIE


1
usunięcie folderu .idea i pliku .iml pomogło.
Redar

2
Czym różni się to od poprzednich odpowiedzi? Wszystko, co zrobiłeś, to skompilować dwie najlepsze istniejące odpowiedzi.
tir38

7

Naciśnij Ctrl-Alt-S> Usuń zaznaczenie wtyczki „Android Support”

(Chciałbym móc dokładnie powiedzieć, dlaczego to działa, ale nie mogę. Jeśli chcesz opracować dla systemu Android, spróbuj użyć Android Studio, które jest również tworzone przez Jetbrains.)


2
File -> Settings (= STRG+ALT+S) -> Plugins -> uncheck "Android Support" Strona pomocy JetBrains
schemat

1
W moim przypadku nie miałem takiej wtyczki, ale „Wtyczka Markdown” oznaczona jako czerwona niekompatybilna, odinstalowałem ją i rozwiązałem problem po ponownym uruchomieniu AS.
djdance,

6

Miał ten sam problem z Android Studio 3.3 Canary 13.

Udało mi się to rozwiązać, wykonując następujące kroki:

  • Przejdź do ustawień modułu i usuń moduł z listy
  • Edytuj ustawienia. Gradle i stamtąd również usuń moduł
  • Fizycznie przenieś katalog modułów z projektu (na przykład na pulpit)
  • Następnie w ustawieniach modułu ponownie dodaj moduł i wybierz jako typ „Importuj projekt Gradle”, w którym wybierasz folder modułu przeniesiony na pulpit (lub gdziekolwiek indziej)

Po wykonaniu tych kroków moduł zostanie ponownie skopiowany do projektu, AS ponownie rozpocznie synchronizację Gradle i zakończy się to powodzeniem bez błędów :-) Sprawdź swój status GIT, a gdy tylko dodasz katalog modułu do GIT ponownie, nic nie będzie zmienił się na twój katalog roboczy. Jest to więc problem z AS, który w jakiś sposób nie jest zsynchronizowany ...

Oparte moje rozwiązanie na tym komentarzu: https://issuetracker.google.com/issues/37008041#comment3


3

Z jakiegoś powodu nie można usunąć folderu .idea

Najlepszym sposobem jest

  • Usuń wszystkie pliki z .idea
  • Usuń .idea


2

To rozwiązanie działało dla mnie Android Studio 3.3.2.

  1. Usuń plik .iml z katalogu projektu.
  2. W Android studio Plik-> unieważnij pamięć podręczną / uruchom ponownie.
  3. Wyczyść i przebuduj projekt, jeśli automatyczna kompilacja zgłosi błąd.

2

Żadne z powyższych nie działało dla mnie, ale próbowałem czegoś losowego i zadziałało.

  1. Skopiuj uszkodzony katalog projektu.
  2. Wklej to w innym miejscu.
  3. Zaimportuj go do Android Studio. (Plik-> Nowy-> Importuj projekt)
  4. I nieuszkodzony projekt zostanie przywrócony.

PS: Musisz mieć oryginalny uszkodzony projekt. (Oznacza, skopiuj go bez modyfikowania struktury projektu)



2

Możesz po prostu obniżyć swoją zależność stopni, aby dopasować ją do bieżącej wersji studia Android.

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

Pracował dla mnie.


1

Dla mnie mój projekt był bardzo zepsuty. Nie wiem, jak dostałem się do tego stanu. Zauważyłem, że kilka plików .gradle i proguard zawierało cały pakiet treści xml. Na szczęście plik fizyczny zawierał poprawną zawartość, ale studio Android wyświetlało go jako jakiś plik xml, który wyglądał, jakby należał do niektórych wygenerowanych danych res xml. Takie rzeczy, jak „Synchronizuj z systemem plików” lub „Synchronizuj projekt do oceniania pliku”, „unieważnij pamięć podręczną i uruchom ponownie” lub „gradlew clean” nie rozwiąże problemu. Zastąpiłem nawet fałszywe dane XML wyświetlane w skryptach stopni oryginalną treścią, ale to też nie pomogło. Wypróbowałem niektóre z powyższych rad, ale albo nie działały, albo wydawały się zbyt skomplikowane, abym mógł poczuć, że mój projekt powróci do dobrze uformowanego stanu.

Więc postanowiłem stworzyć nowy pusty projekt. Korzystając z eksploratora plików, skopiowałem wszystkie moduły uszkodzonego projektu do nowego projektu (zwykła stara kopia i wklej). Zastąpiłem również pliki „settings.gradle” i root „build.gradle” nowego pliku plikiem zawartość ze starego pliku. Gdy to zrobisz, musisz uruchomić „synchronizację projektu z plikami stopni i jesteś dobry lub dobry. Jeśli przez przypadek Twój katalog główny projektu ma zawartość, którą fizycznie dodałeś, musisz to również skopiować.

Dzięki temu wrócisz do pracy. Nie wiem na pewno, co spowodowało uszkodzenie mojego projektu, ale myślę, że może to mieć związek z przejściem laptopa w tryb uśpienia. Mój laptop nie pozwalał mi obudzić się ze snu, a jedynym sposobem, aby się obudzić, było ponowne włączenie zasilania. Kilka razy otworzyłem kilka projektów, kiedy to się stało. To jest moje najlepsze przypuszczenie, w jaki sposób projekt mógł zostać uszkodzony.


1

Skopiuj pliki projektu z oryginalnego źródła i wklej je gdzieś, a następnie zaimportuj z Android Studio.


1

Przez jakiś czas zajmowałem się tym problemem za każdym razem, gdy próbowałem otworzyć projekt.

Zawsze otrzymuję ten błąd, mimo że wiedziałem, że nie wprowadziłem żadnych zmian, które powinny to spowodować, oprócz eksportowania do formatu zip.

Naprawić:

  • Stwórz nowy projekt lub otwórz projekt, który działa
  • Przejdź do pliku> otwórz> „swój projekt”
  • Upewnij się, że Twój fikcyjny projekt pozostaje otwarty. Projekt, w którym pojawiały się błędy, powinien zostać otwarty w nowym oknie.

To naprawiło to dla mnie bez robienia jakichkolwiek zmian lub usuwania czegokolwiek.


0

błąd wyjaśnia wszystko, pomysł jest pomieszany między gradem a maven .

spróbuj utworzyć nowy projekt z dwoma modułami stopni , możesz zbudować aplikację wiosenną z gradem jak maven.

zobacz ten przykład z przewodników wiosennych


0

Następujące rozwiązanie, które znalazłem na tym forum, działało jak urok:

1- zamknij projekt

2 - zamknij Android Studio IDE

3 - usuń katalog .idea z katalogu, w którym znajduje się Twoja aplikacja

4- usuń wszystkie pliki .iml z katalogu, w którym znajduje się Twoja aplikacja

5- otwórz Android Studio IDE i zaimportuj projekt

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.