Как я фиксирую эту ошибку? config.gem: Распакованный драгоценный камень authlogic-2.1.3 в поставщике/драгоценных камнях не имеет никакого файла спецификации

Я получаю эту ошибку при запуске моего сервера Полукровки...

$ script/server --debugger
=> Booting Mongrel
=> Rails 2.3.5 application starting on http://0.0.0.0:3000
config.gem: Unpacked gem authlogic-2.1.3 in vendor/gems has no specification file. Run 'rake gems:refresh_specs' to fix this.
=> Debugger enabled
=> Call with -d to detach
=> Ctrl-C to shutdown server

Когда я работаю, грабли gems:refresh_specs как он предлагают, чтобы я получил другую ошибку хотя:

rake aborted!
undefined method `installed_source_index' for #<Gem::SourceIndex:0x100551a58>

Какие-либо мысли о том, как зафиксировать это?

12
задан Ganesh Shankar 4 April 2010 в 03:49
поделиться

4 ответа

Я не уверен, почему он не работает в Authlogic, но мне пришлось его сгенерировать самостоятельно.

Попробуйте это в своем проекте Rails:

$ prompt> cd vendor / gems / authlogic-2.1.3

$ prompt> authlogic спецификации gem> .specification

22
ответ дан 2 December 2019 в 04:53
поделиться

Я просто подскажу, потому что сегодня я испытываю то же самое, только с другим драгоценным камнем.

Я обновлял hoptoad, чтобы использовать средство уведомления как гем вместо плагина, и одна из инструкций со страницы Github - распаковать гем в vendor / gems.

Я использую Mac OS X, и я распаковал гем следующим образом:

$> rake gems:unpack GEM=hoptoad_notifier

После того, как я сделал это, я получил указанную ошибку, и гем на самом деле не распаковывался (он создал каталог в vendor / gems , но на самом деле не распаковал драгоценный камень).

Я удалил каталог из vendor / gems и повторил попытку:

$> sudo rake gems:unpack GEM=hoptoad_notifier

На этот раз все заработало, распаковано правильно, без ошибок.

4
ответ дан 2 December 2019 в 04:53
поделиться

Думаю, причина в следующем: http://github.com/binarylogic/authlogic/commit/05e452472616bd60bb81affc75a1cb3d95cf7857

Владелец намеренно добавил gitignore в файл .specification. Я предполагаю, что вы заморозите этот конкретный драгоценный камень и отправите его в ветку кода в разделе vendor / gems / .. и, как и ожидалось, git игнорирует этот конкретный файл для каждого запроса

3
ответ дан 2 December 2019 в 04:53
поделиться

Мне пришлось зайти в vendor/gems/authlogic и удалить '.specification' из .gitignore

После этого вы можете запустить rake gems:refresh_specs

Единственная проблема в том, что при следующем обновлении этого gem'а плохой .gitignore возвращается

1
ответ дан 2 December 2019 в 04:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: