Java 9 na linux

0

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.

0

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...

0

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:.

0

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.

0

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ąć?

0

Mozna zamknąć update Intellij i tyle.

1

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 czy tools.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 pakiet jdk9-openjdk. Dlatego polecam najpierw poszukać czy Wasz Linux czegoś takiego nie ma, a dopiero potem ewentualnie ściągać binarki ze strony Oracle'a.
0

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

https://access.redhat.com/documentation/en-US/JBoss_Communications_Platform/5.1/html/Platform_Installation_Guide/sect-Setting_the_Default_JDK.html

Dla Archa:
https://wiki.archlinux.org/index.php/java#Change_default_Java_environment

1

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.

0

zawsze wartość sprawdzić poleceniem which java

0

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

0

nie mogę teraz sprawdzić ale java 9 powinna być już dostępna w sdkman

0
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 czy tools.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 pakiet java-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.

0
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 czy tools.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 pakiet java-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?

0

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.

0
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!

0

Manjaro to badziew

0
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.

1 użytkowników online, w tym zalogowanych: 0, gości: 1