Witajcie, pobrałem Javę na linuxa w tar.gz rozpakowałem tam gdzie stare wersje były zainstalowane, czyli /usr/lib/jvm i usunąłem te stare. W Intellij IDEA normalnie kompiluje i uruchamia, ale jak wpisuje w terminalu '"java" lub "javac" to nie znaleziono polecenia. Jak mam ustawić aby działało? Moja dystrybucja to Manjaro, ale nie różni się ona zbytnio od innych. Dzięki za pomoc.
Dodam, ze teraz po probie wlaczenia Intellij IDEA wyskakuje "No JDK found. Please validate either IDEA_JDK, JDK_HOME or JAVA_HOME environment variable points to valid JDK installation." export JDK_HOME niby ustawiony a nie działa...
ustaw JAVA_HOME, CLASSPATH w pliku .bashrc lub .bash_profile
ja na macu mam tak:
export JAVA_HOME=$(usr/libexec/java_home)
export PATH=$PATH
export CLASSPATH=$CLASSPATH:.
Zapomniałem wpisywać drugiego polecenia, czyli:
export PATH=$JAVA_HOME/bin:$PATH
Do kompletu było trzeba wpisać to:
export JAVA_HOME=/usr/lib/jvm/jdk-9
export PATH=$JAVA_HOME/bin:$PATH
Ale dziękuję za pomoc.
Jeszcze jedno przy odpalaniu Intellij IDEA wyskakuje: 'tools.jar' seems to be not in IDEA classpath.
Please ensure JAVA_HOME points to JDK rather than JRE.
Pobierałem JDK 9 z http://www.oracle.com/technetwork/java/javase/downloads/jdk9-downloads-3848520.html ale nie ma w jdk-9/lib pliku tools.jar, skąd go wziąć?
Mozna zamknąć update Intellij i tyle.
To tylko dopiszę komentarz dla innych osób, które by wpadły w podobny problem:
- Java 9 ma zmieniony układ katalogów i z racji wprowadzenia modułów nie ma już tam choćby plików
rt.jar
czytools.jar
- IDE muszą wiedzieć, że to wygląda inaczej, - wiele dystrybucji Linuksa posiada narzędzia do przełączania się między wersjami Javy, które automatycznie przekonfigurowują środowisko. Przykładowo, w Arch Linuksie jest do tego polecenie
archlinux-java
, a od piątku w repozytoriach jest oficjalny pakietjdk9-openjdk
. Dlatego polecam najpierw poszukać czy Wasz Linux czegoś takiego nie ma, a dopiero potem ewentualnie ściągać binarki ze strony Oracle'a.
Do zabaw algorytmicznych czy bazodanowych polecam używać tego co jest w dystrybucji.
Dopiero jak się okaże że czegoś nie ma w OpenJDK (a jest w Oraclu) to wtedy ściągnąć.
Poza tym warto zostawić sobie to co wspiera OS a nówki wgrywać obok.
IDE pozwala na wybór które JDK chcemy używać.
OS też (RedHat):
/usr/sbin/alternatives --config java
Wynik u mnie (czyli totalny miks):
Selection Command
-----------------------------------------------
* 1 /usr/java/jdk1.8.0_74/jre/bin/java
+ 2 /usr/java/jdk1.7.0_79/jre/bin/java
3 /usr/lib/jvm/jre-1.5.0-gcj/bin/java
4 /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java
Dla Archa:
https://wiki.archlinux.org/index.php/java#Change_default_Java_environment
Na Ubuntu zrobiłem tak:
sudo apt-get install oracle-java9-installer
Następnie podążałem za instrukcjami.
Potem wpisałem sobie w terminalu:
/usr/lib/jvm/java-9-oracle/bin/java -version
i dostałem:
java version "9"
Java(TM) SE Runtime Environment (build 9+181)
Java HotSpot(TM) 64-Bit Server VM (build 9+181, mixed mode)
Tyle.
W IntelliJ IDEA wystarczy podać ścieżkę do JDK w projekcie i działa.
Jeśli chodzi o metodę podaną przez @vpiotr, to kiedyś mi to działało, ale teraz po odpaleniu tego nie załapuje mi zmian. Tzn. Wyświetla się w tej tabelce dobra wersja, ale po wpisaniu java -version
wyświetla się zła wersja. Najlepiej podać ścieżkę bezwzględną podczas odpalania czegokolwiek.
Edit
To jednak działa dobrze. Miałem lokalnie ustawione JAVA_HOME
na poprzednią wersję :-).
Instalowałem też najnowszą wersję dzisiaj na maku i też wszystko działa. Wystarczy ściągnąć wersję ze strony, odpalić installera i tyle. Java wgrywa się wtedy do katalogu: /Library/Java/JavaVirtualMachines/jdk-9.jdk/
. W IntelliJ IDEA też wszystko działa.
zawsze wartość sprawdzić poleceniem which java
java -version java version "9" Java(TM) SE Runtime Environment (build 9+181) Java HotSpot(TM) 64-Bit Server VM (build 9+181, mixed mode)
nawet nie wiem kiedy nawet nie wiem jak. bez żadnych problemów. #arch_linux
nie mogę teraz sprawdzić ale java 9 powinna być już dostępna w sdkman
zyxist napisał(a):
To tylko dopiszę komentarz dla innych osób, które by wpadły w podobny problem:
- Java 9 ma zmieniony układ katalogów i z racji wprowadzenia modułów nie ma już tam choćby plików
rt.jar
czytools.jar
- IDE muszą wiedzieć, że to wygląda inaczej,- wiele dystrybucji Linuksa posiada narzędzia do przełączania się między wersjami Javy, które automatycznie przekonfigurowują środowisko. Przykładowo, w Arch Linuksie jest do tego polecenie
archlinux-java
, a od piątku w repozytoriach jest oficjalny pakietjava-9-openjdk
. Dlatego polecam najpierw poszukać czy Wasz Linux czegoś takiego nie ma, a dopiero potem ewentualnie ściągać binarki ze strony Oracle'a.
Nie widzę pakietu w java-9-openjdk. Aktualizowany system Manjaro XFCE najnowszy.
Biały Wąż napisał(a):
zyxist napisał(a):
To tylko dopiszę komentarz dla innych osób, które by wpadły w podobny problem:
- Java 9 ma zmieniony układ katalogów i z racji wprowadzenia modułów nie ma już tam choćby plików
rt.jar
czytools.jar
- IDE muszą wiedzieć, że to wygląda inaczej,- wiele dystrybucji Linuksa posiada narzędzia do przełączania się między wersjami Javy, które automatycznie przekonfigurowują środowisko. Przykładowo, w Arch Linuksie jest do tego polecenie
archlinux-java
, a od piątku w repozytoriach jest oficjalny pakietjava-9-openjdk
. Dlatego polecam najpierw poszukać czy Wasz Linux czegoś takiego nie ma, a dopiero potem ewentualnie ściągać binarki ze strony Oracle'a.Nie widzę pakietu w java-9-openjdk. Aktualizowany system Manjaro XFCE najnowszy.
Co mam zrobić aby był widoczny ten pakiet?
Trochę d*pa, jak wpisuję w Manjaro 'yaourt jdk9-openjdk' to nic nie wyskakuje. Mam wszystko zaktualizowane, nie wiem jak wyszukać chyba zostaje tylko binarka z oracle.
Biały Wąż napisał(a):
Trochę d*pa, jak wpisuję w Manjaro 'yaourt jdk9-openjdk' to nic nie wyskakuje. Mam wszystko zaktualizowane, nie wiem jak wyszukać chyba zostaje tylko binarka z oracle.
Rozwiązane, wygenerowałem repo AUR zaktualizowałem wpisałem 'yaourt jdk' i znalazło :D. Śmiga aż pięknie :D!
Manjaro to badziew
karolinaa napisał(a):
Manjaro to badziew
Ale zbytnio nie znam się na linuxie - podstawy więc... Kiedyś się nauczę to przejdę na Archa, poza tym i tak Manjaro jest z Archem kompatybilne :P.