TextMate не может найти мой драгоценный камень RSpec в opt (из macports) - PullRequest
0 голосов
/ 07 апреля 2010

Я знаю, что раньше у меня была эта проблема, поэтому я очень расстроен.

У меня установлен пакет Ruby RSpec для TextMate, но когда я запускаю описание поведения или запускаю ориентированный пример, я получаю эту замечательную ошибку:

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:827:
in `report_activate_error': Could not find RubyGem rspec (>= 1.1.0) (Gem::LoadError)
from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:261:
in `activate' from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby
/1.8/rubygems.rb:68:in `gem' from /Users/simon/Library/Application Support/TextMate/Bundles/Ruby
RSpec.tmbundle/Support/lib/spec_mate.rb:13 from /tmp/temp_textmate.oWRPUR:3:in `require'
from /tmp/temp_textmate.oWRPUR:3

(я добавил разрывы строк, чтобы сделать его читаемым)

Я использую macports, поэтому мой rspec gem установлен в /opt/local/lib/ruby/gems/1.8/gems/. Почему он не находит его?

В разделе «Настройки»> «Дополнительно»> «Переменные оболочки» для моего TM_RUBY установлено значение /opt/local/bin/ruby. Я также попробовал хитрость здесь:

http://dnite.org/2007/8/28/textmate-and-your-environment-variables/

... который ничего не делал.

Ответы [ 3 ]

0 голосов
/ 09 апреля 2010

Ну, единственное решение, которое я смог найти, это неубедительное, но работает.

% cd /usr/bin/
% sudo mv ruby moved.ruby
% sudo ln -s /opt/local/bin/ruby ruby
0 голосов
/ 27 мая 2010

Я только что натолкнулся на эту же проблему с новой установкой TextMate и Snow Leopard. Перейдите в «Предпочтения»> «Дополнительно»> «Переменные оболочки» и, наряду с TM_RUBY, убедитесь, что PATH установлен так, что первым должен быть найден рубин, который вы хотите найти.

Я использую rvm, поэтому эта символическая ссылка ...

/usr/local/bin/ruby -> /Users/jjulian/.rvm/bin/textmate_ruby

... позволяет мне сообщить textmate, что первая запись в моем PATH - /usr/local/bin:

PATH  /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

Теперь он всегда находит .rvm/bin/textmate_ruby

0 голосов
/ 07 апреля 2010

Просто добавьте переменную TM_RSPEC_HOME, указывающую на вашу установку rspec.

...