избавиться от рубиновых камней, которые не умрут - PullRequest
21 голосов
/ 16 июня 2009

У меня есть несколько рубиновых камней, которые не исчезнут.

Я думаю, это связано с тем, когда я их установил. Иногда я забывал использовать «sudo» перед установкой gem, что приводит к ошибке записи, и из того, что я могу собрать, помещает копию gem в мой каталог пользователя, а не где-то, где он может работать. Но удаление драгоценного камня не работает. Он постоянно отображается в «списке драгоценных камней», но не может быть удален ни с помощью утилиты gem uninstall, ни sudo gem uninstall. Я попытался напрямую удалить один драгоценный камень после нахождения пути в моем «окружении драгоценных камней», но он все равно оставил драгоценный камень в списке.

Также возможно ли просто удалить все драгоценные камни и начать с нуля? Это сводит меня с ума.

Я использую OS X.

Ответы [ 7 ]

29 голосов
/ 16 июня 2009

Предполагая, что gem clean (или sudo gem clean) не работает, я бы попробовал следующее, чтобы полностью удалить все драгоценные камни из вашей системы:

Вы можете увидеть, где были установлены драгоценные камни, выполнив команду:

gem env paths

Чтобы удалить все драгоценные камни в вашей системе, просто удалите папки, возвращаемые этой командой.

Кроме того, в OSX Leopard в этой папке установлены гемы по умолчанию:

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8

Если эта папка существует в вашей системе, как и раньше, вы можете удалить эту папку, чтобы убедиться, что все драгоценные камни удалены.

8 голосов
/ 12 июня 2010

Вы также можете сделать следующее, чтобы избавиться от установленных самоцветов.

gem list -d [gem name]
gem uninstall --install-dir [install directory] [gem name]

Если вышеупомянутые вещи не работают, я должен был сделать это сам сегодня.

7 голосов
/ 24 июля 2011

У меня была похожая проблема, но корневая проблема оказалась в gemspecs, которая зависла по неизвестной причине.

После того, как я подумал, что удалил все драгоценные камни:

matt$ gem1.9 list
*** LOCAL GEMS ***
minitest (1.6.0)
rake (0.8.7)
rdoc (2.5.8)

Здесь нет драгоценных камней:

matt$ ls -al /opt/local/lib/ruby1.9/gems/1.9.1/gems/
total 0
drwxr-xr-x  2 root  admin   68 Jul 23 14:54 .
drwxr-xr-x  8 root  admin  272 Mar  3 14:56 ..

Вот они!

matt$ ls -al /opt/local/lib/ruby1.9/gems/1.9.1/specifications/
total 24
drwxr-xr-x  5 root  admin  170 Jul 23 14:54 .
drwxr-xr-x  8 root  admin  272 Mar  3 14:56 ..
-rw-r--r--  2 root  admin  129 Nov  1  2010 minitest.gemspec
-rw-r--r--  2 root  admin  121 Nov  1  2010 rake.gemspec
-rw-r--r--  2 root  admin  121 Nov  1  2010 rdoc.gemspec

Удалить gemspecs:

matt$ sudo rm /opt/local/lib/ruby1.9/gems/1.9.1/specifications/*

А теперь драгоценные камни исчезли:

matt$ gem1.9 list
*** LOCAL GEMS ***
2 голосов
/ 07 мая 2016

У меня был драгоценный камень, который не погиб бы, и я должен был пойти по пути «уничтожить все», удалив все мои драгоценные камни с помощью команды gem uninstall -aIx. Тогда просто gem install <gemname> и я снова заработал.

2 голосов
/ 27 мая 2014

Если у вас есть несколько версий драгоценного камня, вам придется сначала очистить, а затем удалить последний драгоценный камень.

 gem cleanup <gemname>
 gem uninstall <gemname> --version
0 голосов
/ 12 июня 2010

Проверьте RVM , это позволяет полностью управлять средой ruby ​​под вашим пользователем, а не в системном каталоге. Я обнаружил, что с его помощью гораздо проще управлять версиями ruby ​​и гемами.

0 голосов
/ 22 июня 2009

обновить вашу версию ruby ​​gems обновление gem --system тогда, надеюсь, гем удалить xxx будет работать прямо сейчас [была ошибка в старых версиях]

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