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


 Członek DUG
 Członek DUG
	



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




 Użyszkodnik
 Użyszkodnik
	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-wordOstatnio edytowany przez KonriX' (2009-12-06 10:54:06)
Offline






 Admin łajza
 Admin łajza
	







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


 Członek DUG
 Członek DUG
	



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






 Admin łajza
 Admin łajza
	







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


 Członek DUG
 Członek DUG
	



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