Podobny problem jak w przypadku nieprawidłowego wydania docelowego: 1.7, ale po śledzeniu bloga mój problem nadal nie został rozwiązany.
Nie udało się wykonać celu org.apache.maven.plugins: maven-compiler-plugin: 3.1: kompilacja (domyślna kompilacja) w projekcie hm_app: Błąd krytyczny kompilacja: nieprawidłowe wydanie docelowe: 1.8 -> [Pomoc 1]
I szedł jako samouczek , kiedy w obliczu tego problemu.
abt java & mvn
C:\mvn>echo %JAVA_HOME%
C:\mvn>echo %JRE_HOME%
C:\mvn>echo %MAVEN_HOME% yields
wyjścia
C:\Program Files\Java\jdk1.7.0_51
C:\Program Files\Java\jre7
C:\apache-maven-3.0.4
Odpowiedzi:
Ustawiono swoimi
%JAVA_HOME
do JDK 1.7, ale staramy się skompilować za pomocą 1.8. Zainstaluj jdk 1.8 i upewnij się,%JAVA_HOME
że tak jest, lub upuść docelową wersję do 1.7.Wydanie docelowe odnosi się do wersji jdk.
źródło
/usr/libexec/java_home -v 1.8
aby ustawić JAVA_HOME na właściwą lokalizację dla 1.8 JDK. Podaj swoją ulubioną wersję zamiast 1.8. (Istnieją znaki odwrotne po = i po 8).Wpisz wartość we wtyczce:
Błąd został użyty:
źródło
W moim przypadku maven "Uruchom konfigurację" używał niewłaściwego JRE (1.7). Koniecznie sprawdź Run -> Run Configurations -> (Tab) JRE, aby być jakimś jdk1.8.x.
źródło
Problem został rozwiązany, ponieważ miałem JDK wskazujący na 1.7, a JRE na 1.8. Sprawdź w wierszu poleceń moje wpisywanie
i
Obie powinny być takie same.
źródło
Oto jak rozwiązałem swój problem w przypadku zaćmienia:
Preferencje -> Kompilator -> Poziom kompilatora kompilatora (Zmień na 1.8)
Perferences -> Installed JREs -> wybierz JAVA SE 8 1.8
Przebuduj przez mavena, używając Run as maven build.
Nie powinno już pokazywać błędu nieprawidłowego celu.
Uwaga: nie musiałem ustawiać ani zmieniać żadnych innych zmiennych w moim terminalu. Mam nadzieję że to pomoże.
źródło
Umieszczenie tego w swoim .profile dynamicznie zajmie się Twoim
$JAVA_HOME
Następnie zamknij powłokę, otwórz nową i przetestuj za pomocą
Powinien wyświetlić coś w stylu
Jeśli nie , usuń wszelkie inne przypisania JAVA_HOME ze swoich skryptów startowych. Pamiętaj, że te skrypty startowe zaczynają się od a,
.
więc są ukryte i nie zostaną uwzględnione podczas używania*
symboli wieloznacznych, np. Jeśli chcesz grepować wszystkie pliki z katalogu domowego, musisz:źródło
Problem, z którym się zmagałem, polegał na tym, że mogłem stworzyć kompilację maven z wiersza poleceń, ale nie z Eclipse. To, co zadziałało w przypadku zaćmienia, to fakt, że zmieniłem konfigurację uruchamiania, aby wskazywała folder JRE w JDK, zamiast zostawiać go w Folder JDK tylko zgodnie ze standardem.To rozwiązanie może również działać dla Ciebie, ale spróbuj tego wtedy i tylko wtedy, gdy wszystkie ścieżki Java są poprawne, java i javac wyświetlają tę samą wersję, co obecna w celu pom.xml.
źródło
Napotkałem ten problem podczas wdrażania na Dokku, z jakiegoś powodu wybierałem JDK 1.7
Utworzenie
system.properties
pliku i ustawieniejava.runtime.version=1.8
rozwiązało problem. Dokku używa teraz Javy w wersji 8. Wybór JDK na HerokuNigdy wcześniej nie musiałem tego robić ...
źródło
Jak wspomniała Camila Macedo - musisz wyraźnie wskazać wersję java dla wtyczki kompilatora. W przypadku butów wiosennych możesz to zrobić za pomocą następnej właściwości:
źródło
maven.compiler.release
naprawiło to w moim projekcie Mavena.Używając IntelliJ musiałem tylko zainstalować kolejną (wyższą) wersję JDK. Po ponownym uruchomieniu IDE wszystko działało, a nawet wszystkie zależności zostały rozwiązane.
źródło
To pytanie nie dotyczyło Dockera, ale otrzymałem ten sam błąd, gdy miałem plik pom.xml, który był przeznaczony dla 1,9 ...
... ale potem próbował przeprowadzić testy na kontenerze Dockera, określając sam „maven”.
W moim przypadku rozwiązaniem było ustawienie dokładnej wersji, której potrzebowałem.
(Możesz dowiedzieć się więcej tutaj .)
źródło
Na komputerze z systemem Windows możesz tymczasowo ustawić wersję Java.
Na przykład, aby zmienić wersję na Java 8, uruchom to polecenie na
cmd
:źródło
Wykonaj aktualizację Force Maven, która przyniesie kompatybilne wersje 1.8 Jar, a następnie podczas budowania zaktualizuj wersje JRE w środowisku Execute do 1.8 z Run Configurations i naciśnij RUN
źródło
Jeśli używasz Eclipse IDE, przejdź do menu Okno i wybierz preferencje, a tam wyszukujesz zainstalowane JRE i wybierasz JRE, którego potrzebujesz do zbudowania projektu
źródło
To, co zadziałało w moim przypadku, to:
Otworzyłem
pom.xml
i wymieniłem jedną z wtyczek jak poniżej.Zanim zredagowałem znaczniki źródłowe i docelowe
1.8
, zmieniłem to na1.7
i zadziałało.źródło