Ошибка при выполнении rails new blah, после проекта, в котором я вернул rails к более ранней версии
рельсы работали нормально, я мог сделать rails new blah
Я хотел протестировать изменение версий рельсов для проекта. До этого момента мой опыт заключался в том, что изменение версии проекта для рельсов не изменит рельсы в глобальном масштабе! Таким образом, мой опыт показывает, что когда я выполняю CD из каталога и выполняю rails -v
, я все еще на 5.2.2.1
Итак, я сделал проект с целью отодвинуться к рельсам 0.8.0 (просто как тест!)
~/rubymac/test16$ cat Gemfile | grep "^gem 'rails'"
gem 'rails', '0.8.0'
~/rubymac/test16$
а я bundle update rails
и без ошибок, и я увидел в Gemfile.lock, что rails 0.8.0, похоже, там указан, так что я думаю, что это сработало так долго.
Затем я сделал cd ..
и rails -v
, ожидая (все еще) увидеть рельсы 5.2.2.1, что было моим опытом в прошлом, когда я возвращал проект к более ранней версии рельсов. Но rails -v
не сработало. И rails new blah123
тоже не сработало.
~/rubymac$ rails -v
(in /usr/local/lib/ruby/gems/2.5.0/gems/rails-0.8.0)
rake aborted!
LoadError: cannot load such file -- rake/rdoctask
/usr/local/lib/ruby/gems/2.5.0/gems/rails-0.8.0/Rakefile:3:in `<top (required)>'
/usr/local/lib/ruby/gems/2.5.0/gems/rake-12.3.2/exe/rake:27:in `<top (required)>'
(See full trace by running task with --trace)
~/rubymac$
и
~/rubymac$ rails new blah2432
(in /usr/local/lib/ruby/gems/2.5.0/gems/rails-0.8.0)
rake aborted!
LoadError: cannot load such file -- rake/rdoctask
/usr/local/lib/ruby/gems/2.5.0/gems/rails-0.8.0/Rakefile:3:in `<top (required)>'
/usr/local/lib/ruby/gems/2.5.0/gems/rake-12.3.2/exe/rake:27:in `<top (required)>'
(See full trace by running task with --trace)
~/rubymac$
Поэтому я искал и нашел этот вопрос Ошибка проекта нового рельса Rails 3 . который предложил gem install rails -v3.0.9
Так я и сделал gem install rails -v5.2.2.1
и это не дает ошибки
~/rubymac$ gem install rails -v5.2.2.1
Successfully installed rails-5.2.2.1
Parsing documentation for rails-5.2.2.1
Done installing documentation for rails after 0 seconds
1 gem installed
~/rubymac$
Но рельсы -v по-прежнему не работают
~/rubymac$ rails -v
(in /usr/local/lib/ruby/gems/2.5.0/gems/rails-0.8.0)
rake aborted!
LoadError: cannot load such file -- rake/rdoctask
/usr/local/lib/ruby/gems/2.5.0/gems/rails-0.8.0/Rakefile:3:in `<top (required)>'
/usr/local/lib/ruby/gems/2.5.0/gems/rake-12.3.2/exe/rake:27:in `<top (required)>'
(See full trace by running task with --trace)
~/rubymac$
Я делаю список драгоценных камней и вижу, какие у меня есть версии rails
~/rubymac$ gem list | grep "^rails ("
rails (5.2.2.1, 5.2.2, 5.2.1.1, 5.2.1, 5.2.0, 5.1.6, 5.1.4, 5.0.7.2, 5.0.7.1, 5.0.1, 5.0.0, 0.8.0)
~/rubymac$
Я попытался удалить rails 0.8.0. это также побудило меня удалить исполняемый файл, и я сказал да
~/rubymac$ gem uninstall rails -v0.8.0
Remove executables:
rails
in addition to the gem? [Yn] y
Removing rails
Successfully uninstalled rails-0.8.0
~/rubymac$ gem list | grep "^rails ("
rails (5.2.2.1, 5.2.2, 5.2.1.1, 5.2.1, 5.2.0, 5.1.6, 5.1.4, 5.0.7.2, 5.0.7.1, 5.0.1, 5.0.0)
~/rubymac$ rails -v
-bash: /usr/local/bin/rails: No such file or directory
~/rubymac$ gem install rails -v5.2.2.1
Successfully installed rails-5.2.2.1
Parsing documentation for rails-5.2.2.1
Done installing documentation for rails after 0 seconds
1 gem installed
но, может быть, я зашел слишком далеко, сказав да, что ранее удалили исполняемый файл, потому что теперь я получаю '..rails: нет такого файла или каталога'
~/rubymac$ rails -v
-bash: /usr/local/bin/rails: No such file or directory
~/rubymac$
даже после попытки установить 5.2.2.1
~/rubymac$ gem install rails -v5.2.2.1
Successfully installed rails-5.2.2.1
Parsing documentation for rails-5.2.2.1
Done installing documentation for rails after 0 seconds
1 gem installed
~/rubymac$ rails -v
-bash: /usr/local/bin/rails: No such file or directory
~/rubymac$
Добавлена
Я тогда попробовал gem uninstall rails, я удалил все версии. Затем я установил рельсы sudo gem. Я запустил новое окно терминала. рельсы -v
когда я делаю which rails
, он говорит /usr/bin/rails
, что является улучшением.
Но когда я делаю рельсы -v, это говорит
Rails is not currently installed on this system. To get the latest version, simply type:
$ sudo gem install rails
You can then rerun your "rails" command.
~$
~$ gem list | grep rails
coffee-rails (4.2.2, 4.2.1)
jquery-rails (4.3.1, 4.1.1)
rails (5.2.2.1)
rails-controller-testing (0.1.1)
rails-dom-testing (2.0.3, 2.0.2)
rails-html-sanitizer (1.0.4, 1.0.3)
sass-rails (5.0.7, 5.0.6)
sprockets-rails (3.2.1, 3.2.0)
на самом деле grep rail * лучше, потому что включает Railties, как указано Полностью удалить Rails
Кроме того, я не использую ни менеджер версий, ни rvm, ни rbenv