Podczas tworzenia pliku .desktop w celu uruchomienia środowiska Eclipse (najnowsza wersja z obsługą JDK 1.8) pojawia się następujący błąd:
A Java Runtime Environment (JRE) or Java Development Kit (JDK)
must be available in order to run Eclipse. No Java virtual machine
was found after searching the following locations:
/home/dean/bin/eclipse-standard-luna-M5-linux-gtk-x86_64/eclipse/jre/bin/java
java in your current PATH
Dlaczego próbuje znaleźć środowisko JRE w katalogu, w którym znajduje się plik binarny Eclipse?
Mogę uruchomić Eclipse z wiersza poleceń i przypiąć go do programu uruchamiającego i działa. Dlaczego plik .desktop jest tak zdezorientowany co do tego, co powinien zrobić?
Oto mój plik .desktop:
[Desktop Entry]
Version=1.0
Name=Eclipse JDK 1.8
Comment=Eclipse
Exec=/home/dean/bin/eclipse-standard-luna-M5-linux-gtk-x86_64/eclipse/eclipse
Icon=/home/dean/bin/eclipse-standard-luna-M5-linux-gtk-x86_64/eclipse/icon.xpm
Terminal=false
Type=Application
Categories=Utility;Application;
Problem, który mam, nie jest tym, o co pytano w powyższym pytaniu jako duplikat . Mój problem jest taki, że moja ŚCIEŻKA do JDK jest ustawiona w moim .bashrc.
Odpowiedzi:
Miałem ten sam problem.
Następny plik eclipse.desktop działa w systemie Ubuntu 14.06 x64.
Nie zmodyfikowałem pliku eclipse.ini
Innym rozwiązaniem jest zmodyfikowanie pliku eclipse.ini bez modyfikacji pliku eclipse.desktop
Moje eclipse.ini:
Opcja -vm i jej wartość (ścieżka) muszą znajdować się w osobnych wierszach.
Więcej informacji: Wiki eclipse.ini
źródło
Dane wyjściowe mówią, że szukał również w ścieżce:
Powiedziałeś, że możesz uruchomić
eclipse
z terminala: W tym przypadku powiedziałbym, że twójjava
jest zainstalowany w niestandardowym katalogu, który jest dodawany do PATH przez skrypt uruchamiania terminala (bashrc, zshrc itp.), Ale nie jest dodawany do sesji po zalogowaniu. Więc kiedy jesteś w sesji terminalowej, ŚCIEŻKA różni się od tej, która jest używana, gdy wywoływany jest plik .desktop.Aby rozwiązać ten problem:
java
jest zainstalowany:which java
~/.profile
czyjava
jest w nim ustawiona poprawna ŚCIEŻKA dla katalogu. Jeśli poprawna ścieżka jest ustawiony tylko.bashrc
,.zshrc
itp to jest możliwe, że te skrypty nie są wywoływane przy logowaniu, więc ścieżka nie jest prawidłowo ustawiony. Również jeśli masz~/.bash_profile
lub~/.bash_login
musisz je również sprawdzić. Jeśli dostarczysz te pliki, możemy sprawdzić, czy to twój problem.Jeśli nie możesz rozwiązać tego w ten sposób, zawsze możesz zmodyfikować ŚCIEŻKĘ bezpośrednio w pliku .desktop za pomocą
env PATH= ...
źródło
Exec=env PATH=/home/dean/bin/jdk1.8.0/bin:$PATH /home/dean/bin/eclipse-standard-luna-M5-linux-gtk-x86_64/eclipse/eclipse
Dokumenty dla pliku .desktop nie były pomocne.Exec=env PATH= ...
o to mi chodziło w mojej ostatniej linii. Zwykle chciałbyś ustawić PATH w .profile, a nie .bashrc. Plik .profile jest analizowany przez powłokę logowania, więc po zalogowaniu poprawnie skonfiguruje PATH, a wtedyenv
obejście nie będzie potrzebne . Na źródłach .profile Debiana / Ubuntu .bashrc, więc nie powinno to stanowić problemu, ale być może twój .profile tego nie robi, więc sprawdź to. Lub masz plik .bash_profile lub .bash_login, który zastępuje ustawienia .profile.Skopiowałem następujący blok z
if [ -n "$BASH_VERSION" ]; then
instrukcji:Próbowałem także bez instrukcji if:
ale w obu przypadkach Eclipse kończy się niepowodzeniem z tym samym komunikatem o błędzie. Najwyraźniej
HOME
nie jest ustawiony, gdy działa lightdm~/.profile
.Jawnie ustawia ścieżkę w
~/.profile
działaniu, ale chcę zachować PATH i inne funkcje Bash (aliasy, funkcje) w tym samym pliku.Rozwiązaniem jest, aby ustawić
PATH
się naExec=env PATH=$PATH:...
linii eclipse.desktop. Jednak nic, co próbowałem, nie działa, aby uruchomić IntelliJ z ikony na pulpicie.Biorąc pod uwagę, że na nowo odkrywasz interfejs GUI Linuksa z Unity, być może nadszedł czas, aby pozostawić serię skryptów podatnych na błędy i użyć czegoś, co jest mniej podatne na błędy i łatwiejsze w użyciu. Skrypty nadal będą musiały być dostępne dla powłok bash, ale pulpit Unity może być od nich niezależny.
źródło
Mam bardzo prostą metodę.
Otwórz Gedit lub Edytor tekstu. Dodaj:
Zapisz na pulpicie jako
eclipse.desktop
.Kliknij prawym
eclipse.desktop
przyciskiem myszy plik> kliknij właściwości> kliknij kartę Uprawnienia >> Kliknij pole wyboru Wykonajźródło