избавиться от рубиновых камней, которые не умрут
-
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 и драгоценными камнями.