Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Witam!
Ostatnio zmieniłem powłokę z bash na zsh. Ogólnie jestem zadowolony, ale jedna rzecz nie działa - java. Chodzi tu o odpalenie programów w javie. Zsh nie wykrywa nawet takiego polecenia jak "java". Gdy przełącze się na bash, normalnie wpisuje np.
java -jar JDownloader.jar
i wszystko pięknie działa. Po przełączeniu na zsh - nic. Gdy wpisze samo java wyrzuca
java will not execute and completion _java exists.
Co może być przyczyną?
Mój system to Arch Linux.
Z góry dzięki za pomoc.
Pozdrawiam
KonriX'
PS. Jeżeli zły dział, to z góry przepraszam, ale ten wydał mi się najodpowiedniejszy ;)
Ostatnio edytowany przez KonriX' (2009-12-12 10:56:48)
Offline
Sprawdź co masz w zmiennej path, może jest coś innego ustawionego w .zshrc czy czego tam używasz. Ewentualnie obadaj jakiś inny konfig choćby ze stronki grml'a.
Jak nie pomoże to może to Cię naprowadzi na coś: http://www.zsh.org/mla/workers/2001/msg00586.html
Edit: Minio faktycznie, literówka z tym paczem ;)
Ostatnio edytowany przez skotx (2009-12-05 17:57:38)
Offline
Najpierw porównaj wyniki which java na obu.
Poza tym skotx miał na myśli zmienną $PATH a nie patch. Jeszcze nic łatać nie trzeba.
Offline
Minio napisał(-a):
Najpierw porównaj wyniki which java na obu.
bash:
/opt/java/bin/java
zsh:
java not found
skotx napisał(-a):
Sprawdź co masz w zmiennej path, może jest coś innego ustawionego w .zshrc czy czego tam używasz. Ewentualnie obadaj jakiś inny konfig choćby ze stronki grml'a.
W pliku konfiguracyjnym nie mam żadnego odwołania do zmiennej $PATH.
Mój config:
cat .zshrc.pre if [[ -z "$DISPLAY" ]] && [[ $(tty) = /dev/tty1 ]]; then startx fi #if [[ -z "$DISPLAY" ]] && [[ $(tty) = /dev/tty1 ]] { exec startx } # Do not warn about old skel dot-files anymore # Do not warn about old skel dot-files anymore autoload -U promptinit promptinit prompt adam2 red autoload -U zsh-mime-setup zsh-mime-setup zstyle ':mime:.avi' handler smplayer %s zstyle ':mime:.txt' handler vim %s # Do not warn about old skel dot-files anymore GRML_WARN_SKEL=0 bindkey '^[Od' backward-word bindkey '^[Oc' forward-word
Ostatnio edytowany przez KonriX' (2009-12-06 10:54:06)
Offline
KonriX' napisał(-a):
bash:
Kod:
/opt/java/bin/javazsh:
Kod:
java not found
Jaki masz system? Skąd masz Javę? Nie powinna ona się znajdować w /opt/.
Doraźnie możesz w zsh „naprawić problem” zmieniając PATH:
export PATH="$PATH:/opt/"
Offline
Mój system to ArchLinux.
Jave instalowałem z repo. Ona chyba zawsze była w /opt/ i jeśli domyślną powłoką jest bash to działa.
azhag napisał(-a):
Doraźnie możesz w zsh „naprawić problem” zmieniając PATH:
Kod:
export PATH="$PATH:/opt/"
Po dodaniu tego do configu znajduje polecenie java ale:
zsh: brak dostępu: java
Ostatnio edytowany przez KonriX' (2009-12-06 13:35:31)
Offline
Tak teraz sprawdziłem z ciekawości i u mnie to działa bez problemu.
Which do javy zwraca:
which java /usr/bin/X11/java
co jest związane z:
update-alternatives --config java Jest tylko jedna alternatywa w grupie dowiązań java: /usr/lib/jvm/java-6-sun/jre/bin/java
Wersja javy:6-16-1
Wersja zsh:4.3.10-7
Wszystko działa na takim konfigu usera:
umask 0077 export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/sbin:/bin:/usr/bin/X11:/opt/e17/bin:/opt/e17/sbin" typeset -U PATH setopt completeinword setopt no_always_last_prompt setopt rm_star_silent setopt automenu setopt autopushd pushdminus pushdsilent pushdtohome setopt nobgnice setopt correct setopt hist_ignore_all_dups setopt autocd setopt extendedglob export HISTSIZE=2000 export HISTFILE=~/.zshhistory export SAVEHIST=50 setopt extendedhistory type compinit &>/dev/null || { autoload -U compinit && compinit } setopt menu_complete setopt multios autoload -U zcalc tmout=1800 zmodload -i zsh/complist COLORX="[0;31;47m" COLOR0="[0m" COLOR1="[0;30;41m" COLOR2="[0;30;42m" COLOR3="[0;30;43m" COLOR4="[0;30;44m" COLOR5="[0;30;45m" COLOR6="[0;30;46m" COLOR7="[0;30;47m" COLOR8="[0;34;41m" COLOR9="[0;34;43m" COLOR10="[0;37;44m" COLOROFF="[0m" red='%{[0;31m%}' white_on_blue='%{[0;37;44m%}' green='%{[0;32m%}' yellow='%{[0;33m%}' blue='%{[0;34m%}' magenta='%{[0;35m%}' cyan='%{[0;36m%}' nocolor='%{[0m%}' PROMPT="${green} %D $(uptime) $nocolor $blue%h ${white_on_blue}%n ${yellow}TTY: %l $yellow Return Code: %? $nocolor $cyan %d $nocolor " alias ll="ls -al --color" alias ls="ls --color" alias l="ls -a --color"
Offline
skotx napisał(-a):
Tak teraz sprawdziłem z ciekawości i u mnie to działa bez problemu.
A autor ma Archa i Javę w /opt/ i ma problem.
Offline
azhag napisał(-a):
A autor ma Archa i Javę w /opt/ i ma problem.
No wiem, ale to co napisałem może okaże się dla niego pomocne.
Offline
Tak więc, problem rozwiązany. Dodanie do configu export PATH="$PATH:/opt/" załatwiło sprawę.
Wielkie dzięki za pomoc.
Pozdrawiam
Offline