Как заморозить драгоценный камень, который не хочет заморозить? (Стойка) - PullRequest
2 голосов
/ 02 декабря 2009

Когда я пытаюсь развернуть мое приложение rails на моем общем хостинге (dreamhost), я получаю эту ошибку:

can't activate rack (~> 1.0.1, runtime) for [], already activated rack-1.0.0 for []

Итак, я хочу заморозить гем стойки в моей среде разработки и добавить его в проект, но даже если он есть в моем config / environment.rb:

config.gem 'rack'

Выполнение граблей самоцветов: распаковка: зависимости не замораживают самоцвет.

ajmbp:trunk ajl$ rake gems:unpack:dependencies
(in /Users/ajl/dev/site/trunk)
ajmbp:trunk ajl$ ll vendor/gems/
.svn/           haml-2.2.14/    net-ssh-2.0.16/ 

Я попытался добавить еще один гем в config.gem просто для тестирования (RedCloth), и он работает, как и ожидалось, но безуспешно с стеллажом.

Есть идеи? Спасибо!

Ответы [ 3 ]

1 голос
/ 18 декабря 2009

Вы пытаетесь перейти на Rails 2.3.5? Прочитайте эту тему: Ошибка версии обхода стойки с использованием Rails 2.3.5

Краткий ответ: Вы не можете. Но Dreamhost обновит Rails в понедельник.

0 голосов
/ 02 декабря 2009

См. эту статью .

Любой драгоценный камень, загруженный в ваш Rakefile (например, metric_fu, vlad и т. Д.), Считается Rails как "базовый драгоценный камень", и такие драгоценные камни не распаковываются. Учитывая, что каталог vendor / gems еще не находится в пути загрузки, когда загружается Rakefile, это, вероятно, хорошая идея.

Другими словами, если у вас есть библиотека, которая предоставляет задачи Rake или иным образом необходима для того, чтобы ваши файлы .rake были действительными, не ожидайте, что «config.gem» и друзья справятся с этим за вас.

Для Dreamhost смотрите их собственную документацию по установке ваших драгоценных камней. Или посмотрите эту прекрасную статью о том, как загрузить свои собственные пакеты и гемы (имейте в виду, что это не для слабонервных).

Но все мои чтения говорят мне, что у вас все еще могут быть проблемы из-за того, как Пассажир может использовать версию стойки, установленную Dreamhost.

Удачи.

0 голосов
/ 02 декабря 2009

Вы проверили переменные среды (я думаю, что это RUBY_GEMS или что-то в этом роде)? Кроме того, ваш environment.rb и (если вы используете fastcgi) ваш .fcgi.

Убедитесь, что пути упорядочены с наивысшего приоритета до наименьшего.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...