2011-09-29 2 views
2

나는 왜 이것을 얻고 있는지 알 수 없습니까?소스 중 하나에서 rake-0.9.2를 찾을 수 없습니다.

$ which rake 
/Users/kamilski81/.rvm/gems/[email protected]/bin/rake 
[~/Sites/work/depot, [email protected]] 
$ /Users/kamilski81/.rvm/gems/ruby-1.9.2-p290\@depot/bin/rake test 
Could not find rake-0.9.2 in any of the sources 
Run `bundle install` to install missing gems. 

나는 내가 얻을 "번들 설치"할 후 ... 내 루트 디렉토리의 ./rake에 꽤 성가신

Installing sqlite3 (1.3.4) with native extensions 
Installing turn (0.8.2) 
Installing uglifier (1.0.3) 
Updating .gem files in vendor/cache 
Your bundle is complete! It was installed into ./rake 

을 내 모든 보석이 설치됩니다.

답변

7

어떤 점에서 bundle install rake을 입력 한 것처럼 보입니다.

bundle 명령은 설치할 보석의 이름을 사용하지 않습니다. 대신, "rake"매개 변수는 번들 ​​된 보석을 설치하는 폴더의 이름입니다.

현재 프로젝트 폴더를 보면 숨겨진 .bundle 디렉토리가 표시됩니다. 여기에있는 config 파일은 번들 설치 옵션을 설정하는 방법을 추적하며 다음에 번들 설치를 실행할 때 설정하는 디렉토리를 기억합니다. 가장 쉬운 방법은 해당 설정 파일에서 옵션을 제거하고 세 번째 매개 변수없이 bundle install을 다시 실행하는 것입니다.

두 번째 부분은 다른 번들이 rake과 같은 명령의 자체 버전을 설치한다는 것입니다. 올바른 버전을 실행하려면 rake 대신 bundle exec rake을 실행하여 번들러가 실행하도록하십시오. 나를 추가에 대한

1

:

source 'https://rubygems.org' 

내 Gemfile에이 문제를 해결했다. 웬일인지 나는 이전에 그것을 삭제했다. 처음에는 .bundle 디렉토리와 함께 앤드류에게 감사 드린다.

+0

이 문제가 해결되었습니다. 나는 내 Gemfile에서 그것을 제거하지 않았다는 것을 안다. 캔버스 LMS를 설치하는 중이었습니다. – joshmmo

1

rubygems.org의 모든 개발 종속성을 설치하려면 --development 매개 변수를 한 번 추가하십시오.

그래서 당신은 실행하려고하는 경우 :

bundle exec rake build 

대신 실행

bundle --development exec rake build 

당신이 누락 된 개발 의존성이 rake 0.9.2을 포함하여, 설치되는 볼 수 있습니다.

그런 다음 --development 매개 변수는 다시 빌드 할 때 제거 할 수 있습니다.

이 방법은 또한 을 의미하지 않습니다.은 작성한 모든 보석에 source http://rubygems.org을 추가해야합니다.

관련 문제