2012-05-05 5 views
2

rbenv에 대한 Github 페이지에서 설명하고 rbenv global 1.9.2-p290 명령을 실행하면, ruby -v은 여전히 ​​1.8.7을 출력합니다. 번들을 실행하려고하면 새 Ruby 1.9 해시 구문 때문에 오류가 발생하므로 Ruby 1.8에서 실행 중임을 알 수 있습니다.rbenv Ruby 버전을 올바르게 전환하지 않습니다.

방글라데시 레일 스케이프 (Vagrant Railscast) 다음으로이 문제가 발생했습니다. 그래서 이것은 에피소드에서와 마찬가지로 Vagrant 가상 박스에 있습니다.

답변

1

흠 나는 한 번 떠돌던 .rbenv-version 파일이 주위에 놓여 있었을 때 한 번 나에게 일어났습니다. 전에 실수로 rbenv local으로 생성 했습니까? 또는 실행하려는 프로젝트에 하나의 프로젝트가 포함되어 있습니까 (1.9 기능이 필요한 경우 이상하게 보일 수 있지만).

+0

에 저장된 파일의 시스템 전체 버전에 추가 할 수 있으며, 그것은 보이지 않았다 하지만 쉘을 다시 시작했을 때 ruby ​​-v는 1.9.2를 보였다. 쉘 세션에 대해 당신이 맞았다 고 생각합니다. – camdub

+0

그런 경우 쉘 세션을 닫으면 사라질 환경 변수를 설정하는'rbenv shell'을 사용하여 설정했을 것입니다. 'rbenv local'은 여전히 ​​존재할'.rbenv-version' 파일을 생성합니다. –

4

쉘을 다시 시작해야 작동합니다. rbenv의 마법은 쉘의 시작 스크립트에 포함되어 있습니다. 수동으로 스크립트를 호출하지 않으면 설치가 완료된 후 으로 시작된 쉘에서만 작동합니다.

또 다른 가능한 원인은 쉘 시작 스크립트에 코드를 추가하는 단계를 건너 뛴 경우입니다. rbenv를 완전히 활성화하려면 적절한 스크립트에 eval "$(rbenv init -)"을 추가해야합니다. bash를 사용하는 경우 ~/.profile, zsh를 사용하는 경우 ~/.zshrc을 추가해야합니다. 당신이 rbenv에 대한 모든 사용자를 활성화하려면

또한, 당신은 내가 rbenv 지역 덤비는 시도 /etc