Jak zainstalować Java JDK na Raspberry Pi

41

Jestem doświadczonym programistą Java, który otrzymał Raspberry Pi na Boże Narodzenie. Niestety wygląda na to, że jest w nim zainstalowany tylko Python. Jakie polecenie wpisuję w wierszu polecenia start, w którym zwykle wpisuję startx, aby zainstalować JDK i JRE?

emulsja
źródło
1
GCC jest również instalowany w domyślnej dystrybucji, więc C i C ++ są również opcjami.
Clifford,
1
W końcu dostępna jest stabilna wersja Oracle JDK 7 (patrz moja odpowiedź poniżej). W przeciwieństwie do JDK 8, nie jest to wersja beta i wciąż jest szybka.
Blaisorblade

Odpowiedzi:

21

[Uwaga: Później w 2013 r . Fundacja Pi ogłosiła, że Raspbian jest teraz dostarczany z pakietem Oracle.

Do tej pory działa dla mnie podgląd wyroczni 8. Kompilacja na pi jest powolna, co zaskakujące, ale jre wydaje się działać dość szybko po załadowaniu. Myślę, że odpowiedź niedźwiedzia jest dość ostateczna, ale jeśli chcesz w prosty sposób wypróbować wyrocznię:

  1. Pobierz . Otrzymasz plik .tar.gz, który jest skompresowanym plikiem gzip.
  2. Umieścić w .tar.gz /usr/locali rozpakuj go: tar -xzf oracle8-blah-blah.tar.gz. Spowoduje to utworzenie katalogu zawierającego wszystko. Można zmienić nazwę katalogu, mv oracle-jdk-whatever jdk1.8.0. Wszystko tam jest samodzielne.
  3. Umieść katalog bin / na początku wyszukiwania wykonywalnego $ PATH. Jeśli są zainstalowane inne Javas, że uczyni to brać pierwszeństwo: PATH=/usr/local/jdk1.8.0/bin:$PATH.

Będzie to działać tylko w przypadku bieżącej powłoki. Aby uczynić go domyślną od teraz dodać do tego ~/.profile:

export PATH=/usr/local/jdk1.8.0/bin:$PATH

Pamiętaj, że musisz się zalogować ponownie, aby był .profileskuteczny. Jeśli jednak używasz lightdm, domyślny login GUI tego nie zrobi, zobacz tutaj rozwiązanie .

Złotowłosa
źródło
42

Aby zainstalować środowisko Java Runtime Environment (JRE), uruchom następującą komendę:

sudo apt-get install openjdk-7-jre

Spowoduje to zainstalowanie środowiska Java JRE (Java Runtime Environment), które umożliwia uruchamianie aplikacji napisanych w języku Java.

Aby zainstalować JDK, uruchom polecenie:

sudo apt-get install openjdk-7-jdk

Pozwala to kompilować aplikacje Java do kodu bajtowego.

Jeśli chcesz Oracle Java VM, która jest o wiele szybsza (zoptymalizowana pod kątem wbudowanych procesorów ARM) i jest również podglądem programisty (aplikacje mogą być wadliwe lub ulegać awarii) do pewnego czasu w przyszłości. Zamiast powyższych instrukcji musisz pobrać plik wywołany Oracle JDK 8 (with JavaFX) for ARM Early Accessna stronie pobierania Oracle Java 8 .

Pamiętaj, aby pobrać system Oracle Java na swój komputer Pi, w przeciwnym razie nie będzie można go zainstalować.

Aby zainstalować system Oracle Java:

sudo tar zxvf jdk-8-ea-b36e-linux-arm-hflt-*.tar.gz -C /opt
sudo update-alternatives --install "/usr/bin/java" "java" "/opt/jdk1.8.0/bin/java" 1 
sudo update-alternatives for other commands if needed (e.g. javac).
java -version

Następnie wszystko jest instalowane.

Inną sprawą jest to, że jeśli zainstalowano więcej niż jedno środowisko wykonawcze Java, musisz sprawdzić, której wersji używasz z poleceniem java -version. Jeśli dane wyjściowe to:

java version 1.5.0 gij (GNU libgij)

Następnie używasz innego środowiska wykonawczego Java. Możesz rozwiązać problem, uruchamiając

sudo update-alternatives --config java

i wybierając opcję OpenJDK lub Oracle.

hifkanotiks
źródło
podczas wykonywania tar zxvf jdk...polecenia dwa błędy (drugi powtarza się):tar (child): jdk...tar.gz: no such file or directory tar (child): fatal error received. exiting now
impulsja
@imulsion Plik może mieć nieco inną nazwę - wpisz lspolecenie i zamiast tego użyj pliku o podobnej nazwie.
hifkanotiks
po czym pisać ls?
emulsja
tar zxvf []gdzie [] to plik o podobnej nazwie.
hifkanotiks
1
Tylko dlatego, że kopiujesz do / opt. Zwykle nie potrzebujesz tego.
daviewales
8

Instalowanie pakietu JDK Oracle Java 7 JDK (ale nie JRE) dla RPi jest teraz tak zadziwiająco proste, jak:

sudo apt-get update && sudo apt-get install oracle-java7-jdk

( źródło )

Kiedyś przechodziłem przez stare procesy, które zostały połączone powyżej, ale ponieważ one to ułatwiły, teraz po prostu to robię.

niewinny
źródło
1
Co więcej, jeśli twój Wheezy pochodzi z 2013-09-25-wheezy-raspbianlub później ( tutaj ), Oracle Java 7 JDK wydaje się być wstępnie zainstalowany.
einnocent
4

sudo apt-get install java-runtime

To jest OpenJDK 6.

Oracle JDK nie jest dostępny w wersji armhf, więc aby go użyć, musisz użyć obrazu soft-float.

M. Noit
źródło
3
Oracle JDK 8 jest dostępny w wersji dla programistów. W moim przypadku działa bez problemu. raspberrypi.org/phpBB3/viewtopic.php?f=81&t=26110
keiki
@M Noit mówi, że istnieje mnóstwo pakietów, które mogę zainstalować i muszę je określić. co wpisać?
emulsja
0

Szczegółowe instrukcje dla Java SE Embedded firmy Oracle znajdują się tutaj .

Clifford
źródło
0

Obecnie zamiast JDK 8 Early Access można zainstalować twardą wersję Oracle JDK 7, która ma pełne wsparcie Oracle (w przeciwieństwie do JDK 8).

Aktualna strona pobierania Oracle (taka sama jak w innych wydaniach Java): http://www.oracle.com/technetwork/java/javase/downloads/index.html

(Brak JRE jest dostępny, musisz pobrać pełny JDK).

Ogłoszenie: http://www.raspberrypi.org/phpBB3/viewtopic.php?f=81&t=49588

Do instalacji możesz odnieść się do odpowiedzi niedźwiedzia .

Blaisorblade
źródło