Удаление рельсов и драгоценных камней, получение ошибки "не удается удалить, проверить" gem list -d... "
Я собираюсь начать с обычной строки noob: "Я новичок в рельсах". О, и я запускаю Mac OSX 10.6.4
Я следил за набором руководств, которые нужно настроить, в частности, эти здесь и . Гиды велики, причина, по которой я использую вторую, - это из-за RVM и причина, по которой я использую первую, для MYSQL.
В любом случае, когда я начал, я полностью не следил за указаниями, поэтому после установки RVM по какой-то причине я установил рельсы с sudo gem install rails -v 2.3.8
, потому что эта версия мне нужна. Итак... Я понял, что использую систему ruby и не использовал RVM. Теперь я установил Ruby 1.9.2, поэтому я могу установить рельсы 3 и протестировать его, а также установить 1.8.7 и rails 2.3.8, чтобы я мог использовать его для того, что мне нужно.
Теперь я пытаюсь удалить драгоценные камни из системы Ruby, но всякий раз, когда я пытаюсь получить эту ошибку:
ОШИБКА: при выполнении gem... (Gem:: InstallError)
не удается удалить, отметьте 'gem list -d любой камень, который я пытаюсь удалить
Любые идеи о том, как удалить рельсы и все эти драгоценные камни? Я просто хочу начать с нуля с помощью RVM.
UPDATE:
Запустив команду gem list -d rails
, я нашел драгоценные камни в /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/18. Должен ли я удалить их вручную?
Ответы
Ответ 1
РЕШЕНИЕ! Я до сих пор не понимаю, почему это произошло, я бы хотел, чтобы кто-нибудь мог объяснить. Почему путь не существует? Что вызвало эту ошибку?
Кроме того, я хочу упомянуть, что в решении, с которым я связан, есть комментарий, говорящий, что вопрос является дубликатом. Однако оригинал имеет другое решение и не помог мне (хотя его основа для поиска ответа). Простое удаление драгоценных камней вручную в finder не удалит их из списка драгоценных камней.
Без дополнительного ado - получается, что при попытке удалить драгоценный камень он не может найти свой путь (я думаю, проблема связана с установкой с помощью sudo, но я могу ошибаться), Что вам нужно сделать (вы должны делать это один за другим для каждого драгоценного камня, или, по крайней мере, мне пришлось):
-
gem list -d 'name of gem'
и отметьте место "Установлено в:" (в моем случае, /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8)
-
sudo gem uninstall 'name of gem' -i 'the path noted above'
(например, в моем случае sudo gem uninstall rails -i /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8
- Некоторые драгоценные камни, возможно, не удалят удаление ошибки разрешений. Если это так, то вам нужно создать папку /bin по пути выше. (в моем случае
mkdir /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8/bin
- Продолжайте удаление, как на шаге 2, все еще используя исходный путь (/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8).
Теперь все uninstalls должны работать!
Ответ 2
Две вещи, которые вы должны учитывать при использовании rvm:
-
Вы должны НИКОГДА использовать sudo
для установки драгоценных камней, просто выполните gem install xxx
-
Вы не можете удалить драгоценные камни, установленные в глобальном gemset, из другого gemset. Вы должны переключиться на глобальный gemset и удалить оттуда:
rvm gemset use global
gem uninstall xxx
Ответ 3
выполните это либо в irb, либо в собственном script:
`gem list --no-versions`.split("\n").each do |gem|
`gem list -d #{gem}`.gsub(/Installed at(.*):.*/).each do |dir|
dir = dir.gsub(/Installed at(.*): /,'').gsub("\n", '')
system "gem uninstall #{gem} -aIx -i #{dir}"
end
end
Ответ 4
попробуйте следующим образом:
sudo apt purge rails
Ответ 5
ok я вижу....
в этот момент, если вы находитесь в терминале, не требуется всего несколько минут, чтобы переустановить весь shebang
Я подозреваю, что вы не можете быть в правильном имени rvm, у которого есть драгоценные камни, которые вы пытаетесь установить, поэтому я предлагаю переустановить rubygems и построить вас - это основные драгоценные камни с самого начала в вашем Global
rvm gemset имя.
Ответ 6
Более общий ответ для удаления всех драгоценных камней для более старых версий драгоценных камней 1.8.
gem list --no-versions | xargs sudo gem uninstall -aIx
Ответ 7
Я использовал RVM для управления моими гемзетами и не выбрал gemset. Я не был тем, что выбрал неправильный гемсет, я вовсе не выбрал гемсет. Прекрасный способ провести основную часть часа моего первого утра после моих летних каникул!