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

StackOverflow https://stackoverflow.com/questions/1000731

  •  05-07-2019
  •  | 
  •  

Вопрос

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

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

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

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

Это было полезно?

Решение

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

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

gem env paths

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

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

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

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

Другие советы

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

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

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

У меня была похожая проблема, но основной проблемой оказались 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 ***

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

 gem cleanup <gemname>
 gem uninstall <gemname> --version

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

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

Проверить РВМ, он позволяет вам полностью управлять средой Ruby под вашим пользователем, а не в системном каталоге.Я обнаружил, что с его помощью гораздо проще управлять версиями Ruby и драгоценными камнями.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top