Najprawdopodobniej masz niepoprawne opcje kompilatora zaimportowane z Maven tutaj:
Sprawdź także ustawienia wersji kodu bajtowego projektu i modułu ( docelowe ) przedstawione na zrzucie ekranu.
Inne miejsca, w których skonfigurowano poziom języka źródłowego :
- Struktura projektu | Projekt
- Struktura projektu | Moduły (sprawdź każdy moduł) | Źródła
Domyślny poziom języka Maven to 1,5 (5,0), zobaczysz tę wersję jako poziom języka Moduł na zrzucie ekranu powyżej.
Można to zmienić za pomocą konfiguracji wtyczki kompilatora maven wewnątrz pom.xml
:
<project>
[...]
<build>
[...]
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
[...]
</build>
[...]
</project>
lub
<project>
[...]
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
[...]
</project>
IntelliJ IDEA zastosuje się do tego ustawienia po ponownym zaimportowaniu projektu Maven w oknie narzędzia Maven Projects :
pom.xml
konfiguracja wtyczki kompilatora Java może określić wersję Java, która zastąpi to ustawienie przy następnym wprowadzeniu zmian w pliku pom.xml (jeśli włączona jest automatyczna ponowna importacja) lub ponownym importowaniu projektu ręcznie.IntelliJ 15, 2016 i 2017
Podobne do omówionego poniżej dla IntelliJ 13 i 14, ale z dodatkowym poziomem w panelu Ustawienia / Preferencje: Ustawienia > Kompilacja, wykonanie, wdrożenie > Kompilator > Kompilator Java .
IntelliJ 13 i 14
W IntelliJ 13 i 14 sprawdź Ustawienia> Kompilator> Interfejs kompilatora Java, aby upewnić się, że nie celujesz w inną wersję kodu bajtowego w swoim module.
źródło
W IntelliJ IDEA 14.1 „Docelowa wersja kodu bajtowego” znajduje się w innym miejscu.
Następująca zmiana działała dla mnie:
Plik> Ustawienia ...> Kompilacja, wykonanie, wdrożenie> Kompilator> Kompilator Java : zmień docelową wersję kodu bajtu z 1,5 na 1,8
źródło
Czy spojrzałeś na konfigurację kompilacji, tak powinno być, jeśli używasz maven 3 i JDK 7
źródło
Natknąłem się na to i poprawką było przejście do Ustawień projektu> Moduły> kliknij konkretny moduł> zakładkę Zależności. Zauważyłem, że moduł SDK wciąż był ustawiony na 1.6, zmieniłem go na 1.7 i działało.
źródło
Znalazłem wymagane opcje ('docelowa wersja kodu bajtowego') w ustawieniach> kompilator> kompilator java w moim przypadku (pomysł 12.1.3)
źródło
Zmodyfikuj plik ustawień kompilatora projektu w następującej ścieżce i zmień „target” na 1.7:
źródło
Rozwiązałem to, ustawiając pole puste:
Ustawienia> Kompilator> Kompilator Java> Wersja kodu bajtowego projektu
Niż IntelliJ używa domyślnej wersji JDK.
źródło
Z jednej chwili na drugi ten błąd też otrzymałem bez wyraźnego powodu. Zmieniłem wszelkiego rodzaju ustawienia kompilatora / modułu itp. Ale w końcu właśnie odtworzyłem projekt IntelliJ, ponownie importując projekt Maven i problem został rozwiązany. Myślę, że to błąd.
IntelliJ 12 129,961
źródło
Uderzyłem to po niewielkiej aktualizacji z IntelliJ IDEA 14 do wersji 14.1. Dla mnie pomogła zmiana edycji top / Parent Pom, a następnie kliknąłem ponownie importuj Maven (jeśli nie jest to automatyczne).
Ale może wystarczy kliknąć prawym przyciskiem myszy moduł / moduły / moduł nadrzędny i Maven -> Reimport.
źródło
Rozwiązałem metodę poniżej
Plik >> Struktura projektu >> Projekt >> Poziom języka projektu -> ustaw odpowiednią wersję (np. 1.5)
źródło
sprawdź .idea / misc.xml czasami trzeba ręcznie zmienić atrybut languageLevel = "JDK_1_X"
źródło
Jeśli jest to projekt Gradle, w pliku build.gradle wyszukaj następujące ustawienia:
Dla wszystkich podprogramów w głównym pliku build.gradle możesz umieścić:
Chociaż możesz ręcznie ustawić poziomy językowe w Pomysł> Ustawienia, jeśli jest to projekt Gradle, Idea automatycznie synchronizuje pliki modułu .iml z ustawieniami Gradle (testowane z Idea 15+). Dlatego wszystkie ręczne zmiany są zastępowane po odświeżeniu stopnia.
Na podstawie dokumentacji Gradle , jeśli nie są one ustawione, używana jest bieżąca konfiguracja JVM.
źródło
Znalazłem inny sposób na wystąpienie tego błędu. Możesz to uzyskać, jeśli ponownie organizujesz strukturę katalogów, a jeden z poms wskazuje starego rodzica, który już nie konfiguruje javac (ponieważ ta konfiguracja została przeniesiona na poziom średni). Jeśli tak się stanie, najwyższy poziom domyślnie wyniesie 1,5, a niewłaściwie zachowujący się pom dolny odziedziczy go.
Kolejną rzeczą, którą należy sprawdzić, gdy zobaczysz ten błąd, jest to, czy struktura pom poprawnie dopasowuje się do struktury katalogów.
źródło
Jeśli kompilacja Maven działa poprawnie, spróbuj zsynchronizować strukturę projektów Maven i IntelliJ IDEA.
W oknie narzędzia Maven kliknij przycisk odświeżania . Po naciśnięciu tego przycisku IntelliJ IDEA analizuje strukturę projektu w oknie narzędzia Maven.
Pamiętaj, że może to nie pomóc, jeśli używasz kompilacji EAP, ponieważ funkcja synchronizacji Maven może czasami być zepsuta.
źródło
Upewnij się, że wybrano odpowiednią depresję. Plik> Struktura projektu
Wybierz swój projekt i przejdź do zakładki Zależności. Wybierz odpowiednią zależność z menu rozwijanego lub utwórz nową.
źródło
Jeśli wszystkie poprzednie rozwiązania nie działały dla Ciebie (tak było w moim przypadku), możesz usunąć pliki konfiguracyjne intellij:
Intellij zregeneruje nowe później. Należy jednak zachować ostrożność, spowoduje to również usunięcie całej konfiguracji intellij dokonanej na projektorze (tj .: konfiguracja trybu debugowania, ...)
źródło
Musisz zmienić wersję kompilatora Java w konfiguracji kompilacji.
źródło