Mam ustawione JAVA_HOME na:
C:\Program Files (x86)\Java\jdk1.6.0_18
Po uruchomieniu maven install
otrzymuję tę wiadomość od Eclipse :
Powód:
Unable to locate the Javac Compiler in:
C:\Program Files (x86)\Java\jre6\..\lib\tools.jar
Please ensure you are using JDK 1.4 or above and
not a JRE (the com.sun.tools.javac.Main class is required).
In most cases you can change the location of your Java
installation by setting the JAVA_HOME environment variable.
Jestem pewien, że to jest trudna część
Upewnij się, że używasz JDK 1.4 lub nowszego, a nie JRE
Kiedy uruchamiam konfigurację, jest ustawiony na JRE6. Jak zmienić go na JDK 1.6, który już zainstalowałem?
Próbowałem nawet zmodyfikować wtyczkę:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.0.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<executable>C:\Program Files (x86)\Java\jdk1.6.0_18\bin</executable>
</configuration>
</plugin>
Nadal pojawia się ten sam błąd.
Używam wtyczki Eclipse Maven. Jak mogę zmienić JRE na JDK w Eclipse?
set
poleceń, aby upewnić się, że JAVA_HOME jest ustawiony na to, co myślisz?java -version .6.0_18-ea" time Environment (build 1.6.0_18-ea-b04) ) Client VM (build 16.0-b11, mixed mode, sharing)
java -version
jest uruchomiona; może to być instalacja JRE lub JDK.javac -version
byłoby trochę bardziej przydatne. Jednak nawet wtedy, jeśli PATH jest poprawna, a JAVA_HOME jest błędna, nadal będą one wyglądać tak, jak można się spodziewać.Odpowiedzi:
Możesz spróbować zaktualizować JDK Eclipse w następujący sposób:
Dodaj i ustaw środowisko JRE w menu Okno → Preferencje ... → Java → Zainstalowane środowiska JRE :
Jeśli tak nie jest, możliwe, że nawiasy i spacje w ścieżce JAVA_HOME powodują problemy. Spróbuj skopiować zestaw JDK do innej lokalizacji i zaktualizować JAVA_HOME.
źródło
Plik eclipse.ini wymaga
vm
argumentu wskazującego lokalizację JDK.Edytuj
eclipse.ini
plik, aby wskazywał na twój dom JDK, coś w następujący sposób -Gwarantuje to, że Eclipse będzie działał z JDK, a nie z domyślnym JRE na twoim komputerze.
źródło
Próbujesz:
Idź do
Preferences/Java/Installed JREs
i dodaj jeden dla lokalizacji"C:\Program Files\Java\jdk1.6.0_27\jre
lub coś w tym stylu.Usuń ten dla
C:\Program Files\Java\jre6
Jak widać, ścieżka
C:\Program Files\Java\jre6\..\lib\tools.jar
ma sens tylko wtedy, gdy pierwsza część (do / ..) zostanie zastąpiona przezC:\Program Files\Java\jdk1.6.0_27\jre
.źródło
Ustawienie widelca na true rozwiązało problem za mnie.
źródło
Miałem dokładnie ten sam problem! Szukałem i szukałem przez wiele dni, ponieważ wszystkie bełkot o "wstaw -vm c: \ program files \ java \ jdkxxxxx \ bin" w ini ar jako argument dla skrótu nie pomogły !
(Czy nie brzmię na sfrustrowanego? Uwierz mi, to mało powiedziane! Jestem po prostu wściekły, ponieważ straciłem tydzień, próbując uczynić Mavena niezawodnym!)
Zachowywałem się bardzo nieprzewidywalnie. Czasami się kompilował, a czasami nie. Gdybym to zrobił
maven clean
, nie mógł znaleźć kompilatora i nie powiódł się. Gdybym potem zmienił coś w ścieżce kompilacji, nagle znowu zadziałało !!Dopóki nie przeszedłem do menu Okno → Preferencje → Java → Zainstalowane JRE . Dodałem nowe środowisko JRE, korzystając z lokalizacji JDK, a następnie usunąłem środowisko JRE. Nagle Maven zaczął działać stabilnie!
Może warto umieścić litery o rozmiarze czcionki 30 lub więcej w podręczniku Apache?
Z całym szacunkiem jest to po prostu oburzające dla społeczności Java! Nie mogę sobie wyobrazić, ile dni stracili ci wszyscy ludzie, próbując rozwiązać swoje problemy tego rodzaju! Nie mogę sobie wyobrazić, że jest to wersja ostateczna. Osobiście nie odważyłbym się nawet wydać czegoś takiego pod nazwą oprogramowanie beta ...
Z poważaniem tak czy inaczej… Po tygodniu majstrowania mogę wreszcie zacząć się rozwijać. Mam nadzieję, że mój szef się o tym nie dowie. Wiele wysiłku kosztowało mnie przekonanie go, żeby nie chodził na .NET i już jest mi z tego powodu przykro.
źródło
Mam ten sam problem, używając Uruchom jako -> Maven zainstalować w Eclipse. JAVA_HOME i eclipse.ini były w porządku i wskazywały na mój najnowszy JDK. Ale m2clipse używał JRE. Korzystanie z instalacji mvn poza Eclipse działało dobrze!
W moim przypadku problem rozwiązałem następująco:
Myślę, że Maven nie bierze pod uwagę, który z nich jest aktywny ...
źródło
Bazując na kompilowaniu źródeł przy użyciu innego JDK , będziesz musiał ustawić fork na true w swoim pliku pom.xml .
źródło
Właśnie zainstalowano Maven 3.0.4 ustaw
M2_HOME
,M2
iJAVA_HOME
odpowiednio. Następnie uruchomiłem następujące polecenia:mvn archetype:generate....
mvn compile
Dostałem wiadomość nie powiodło, takich jak:
maven unable to locate javac compiler
.Na moim komputerze domyślnie zainstalowane jest środowisko JRE w lokalizacji C: \ program files \ java \ jre.1.6 . I mam drugie C: \ java \ jdk1.6 i
JAVA_HOME
ustawione na C: \ java \ jdk1.6 .Nie widziałem nic złego w moim ustawieniu. Po wyszukaniu postanowiłem zajrzeć
mvn.bat
, powtarzałem%JAVA_HOME%
każdy krok i wyświetlało się poprawnie jakoC:\java\jdk1.6
, ale po uruchomieniu poleceniamvn --version
wyświetliło się Java home: C: \ program files \ java \ jre1.1.6 .W końcu dowiedziałem się, że wystarczy ustawić
-Djava.home=c:\java\jdk1.6
jak w poniższym poleceniu i teraz działa dobrze:%MAVEN_JAVA_EXE% %MAVEN_OPTS% -classpath %CLASSWORLDS_JAR% "-Dclassworlds.conf=%M2_HOME%\bin\m2.conf" "-Djava.home=%JAVA_HOME%" "-Dmaven.home=%M2_HOME%" %CLASSWORLDS_LAUNCHER% %MAVEN_CMD_LINE_ARGS%
Uwaga: dotyczy
mvn
to wiersza poleceń, a nie Eclipse.źródło
Rozwiązałem problem, zmieniając lokalizację zainstalowanego środowiska JRE na katalog obecny w samym JDK. Ustawienie odpowiedniej wartości
JAVA_HOME
zmiennej środowiskowej nie rozwiązało problemu.W moim przypadku są dwa katalogi
C:\Program Files\Java\jdk1.7.0_03 --> For JDK
C:\Program Files\Java\jre7 --> For JRE
Początkowo ustawiłem
C:\Program Files\Java\jre7
jako Zainstalowane JRE w Eclipse i otrzymywałem ten sam błąd w przypadku Mavena (Ant działał dobrze).Zmiana zainstalowanego środowiska JRE na
C:\Program Files\Java\jdk1.7.0_03\jre7
Zainstalowane środowisko JRE w Eclipse rozwiązuje problem.źródło
Nie zapominaj, że jeśli uruchamiasz swój projekt z konkretnej konfiguracji Eclipse, powinieneś zmienić środowisko wykonawcze Java w 'Run Configurations' -> 'Your Maven configuration' -> 'JRE tab' po dodaniu odpowiedniego JDK do Twoje preferencje Eclipse.
źródło
Wygląda na to, że Maven używa środowiska JRE, a nie JDK. Być może zainstalowałeś Mavena przed zainstalowaniem JDK?
Sprawdź pliki ustawień . W sumie są trzy: system, użytkownik i projekt. Najprawdopodobniej jest to konfiguracja instalacji ($ M2_HOME / conf / settings.xml) lub, być może, konfiguracja dla użytkownika ($ {user.dir} /. M2 / settings.xml).
źródło
Tylko konfiguracja Eclipse
Wykonaj następujące kroki:
Kliknij prawym przyciskiem myszy Właściwości projektu Eclipse
Ścieżka budowania Java → Biblioteki
Wybierz JRE System Library → Kliknij Editprzycisk
Kliknij przycisk „Zainstalowane środowiska JRE ...”
Edytuj JRE jako: Ustaw JRE Home = JAVA_HOME lub JAVA_HOME \ jre
Zrzut ekranu:
źródło
Kliknij prawym przyciskiem myszy menu Projekt → Właściwości → Ścieżka budowania Java .
Wybierz ścieżkę systemową JRE → Edytuj . Wybierz domyślne środowisko JRE obszaru roboczego i wskaż je JDK> 1.4.
źródło
Użyj menu Okno → Preferencje → Java → Zainstalowane środowiska JRE → Środowiska wykonawcze -> kliknij pole wyboru po prawej stronie.
źródło
Rozwiązanie jest proste. Czasami Eclipse Windows → Preferencje → Java → Zainstalowane JRE wskazuje na
C:\Program files\Java\jre
.Po zmianie na
C:\Program files\Java\JDK 6.0\jre
to działa w 100%.źródło
Jak wspomniało kilku innych, okno Eclipse → Preferencje ... → Java → Zainstalowane środowiska JRE powinno wskazywać na zainstalowany pakiet JDK , a nie na środowisko JRE. Dopiero wtedy może znaleźć
../lib
folder wymieniony w komunikacie o błędzie.Mimo to problem może się powtórzyć. Moim wyjściem w Eclipse v4.2 (Juno) jest zrobienie menu Maven → Aktualizuj projekt ... po czym problem znika.
Podejrzewam, że powodem jest to, że niektóre pliki wygenerowane przez Eclipse (.classpath, .project, .preferences) znajdują się w Subversion dla projektu, w którym mam te problemy. Tak więc aktualizacja SVN wprowadza problem, a aktualizacja konfiguracji z Mavena w Eclipse rozwiązuje go ponownie.
Prawdziwe rozwiązanie: pomiń wygenerowane przez Eclipse pliki .files z kontroli wersji i pozwól wtyczce Maven Eclipse obsłużyć konfigurację projektu. (Dodatkowe wskazówki / sugestie są mile widziane) .
źródło
W moim przypadku w menu Eclipse Run → Debug Configurations .
Na karcie JRE wybranie JDK zamiast JRE rozwiązało problem.
źródło
Miałem ten sam problem na Amazon Linux. Okazuje się, że musiałem zainstalować wersję deweloperską JDK:
źródło
Przejdź do menu Eclipse Okno → Preferencje ... → Java → Zainstalowane środowiska JRE powinny wskazywać na zainstalowany pakiet JDK, a nie na środowisko JRE.
źródło
Możesz również upewnić się, że Eclipse ma wszystkie zaktualizowane zmiany. Aby to zrobić, kliknij prawym przyciskiem myszy projekt, a następnie wybierz opcję „Odśwież”.
źródło
Wiele innych odpowiedzi mówi, aby skierować Eclipse do JDK zamiast JRE.
Oto kolejna odpowiedź z bardziej szczegółowymi / jasnymi [niż widziałem w jakiejkolwiek odpowiedzi tutaj], krok po kroku, jak to zrobić: Jak zainstalować JDK?
To właśnie rozwiązało mnie dla tego samego problemu.
źródło
Upewnij się, że "-vm" w twoim eclipse.ini znajduje się w dwóch oddzielnych wierszach, tj .:
źródło
Domyślam się, że lokalizacja kompilatora jest zdefiniowana w POM, aby wtyczka kompilatora znajdowała się w wyświetlanej lokalizacji JRE, zamiast lokalizacji JDK, na którą wskazuje JAVA_HOME.
źródło
<groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>2.0.2</version> <configuration> <source>1.6</source> <target>1.6</target>
Musisz wskazać
JAVA_HOME
wmvn.ini
(jest w folderze Maven/bin
), a twój problem zniknie.źródło
Jeśli ustawisz JAVA_HOME, a problem nadal występuje, spróbuj wykonać następujące czynności.
(Miałem ten sam problem na świeżo zainstalowanym komputerze).
Zakładając, że używasz Eclipse.
To wszystko. Twój projekt nie będzie cierpieć z powodu takich problemów.
źródło
Miałem ten sam błąd z powodu wersji JUnit . Miałem trzy wersje 3.8.1 i zmieniłem na 4.8.1.
Tak więc rozwiązaniem jest:
Musisz iść do POM i upewnić się, że twoja zależność wygląda tak
źródło
Zmieniłem konfigurację wtyczki maven-compiler-plugin, aby dodać
executable
ifork
z wartością true.U mnie to zadziałało.
źródło
Zrób
Echo %JAVA_HOME%
i wtedymvn --version
.Ścieżka do JRE powinna być taka sama ... następnie przejdź do menu Okno → Preferencje → Java → Lokalizacja zainstalowanego środowiska JRE powinna być taka sama, jak
Java_Home
wyświetlana.źródło
Przejdź do okna dialogowego Właściwości i kliknij projekt prawym przyciskiem myszy.
W zasobach połączonych dodaj nową ścieżkę o nazwie JAVA_HOME i umieść w lokalizacji JDK, na przykład „C: \ Program Files \ Java \ jdk1.8.0_73”.
To wszystko!!
źródło
Rozwiązanie tego problemu jest bardzo proste ...
Jeśli nie masz pliku kompilacji Ant , wygeneruj go. W Eclipse możesz łatwo utworzyć plik Ant .
Skorzystaj z linku, aby utworzyć plik kompilacji Ant [ http://www.codejava.net/ides/eclipse/how-to-create-ant-build-file-for-existing-java-project-in-eclipse] .
Teraz wykonaj podane czynności:
1) Dodaj swój Ant plik build Ant w widoku, który jest w widoku okna.
2) kliknij prawym przyciskiem myszy plik kompilacji Ant i wybierz opcję Uruchom jako oraz drugą opcję w tej „Kompilacji Ant”.
3) Teraz otworzy się okno dialogowe z różnymi opcjami i zakładkami.
4) Wybierz kartę JRE .
5) Zobaczysz trzy przyciski opcji i będą one miały JRE lub JDK wybrane jako opcja.
6) Sprawdź uważnie, czy w opcjach przycisku radiowego wybrano środowisko JRE, a następnie zmień je na JDK .
7) Kliknij zastosuj.
Otóż to...!!!
źródło