Rails terus memberi tahu saya bahwa saat ini belum terpasang


86

Saya gunakan rvmuntuk mengelola rubi yang berbeda dan kumpulan permata mereka. Shell saya adalah zsh dengan oh-my-zsh dikonfigurasi dengan pengaturan dasar. Plugin oh-my-zsh yang diaktifkan adalah ruby, rails, osx, dan git. Inilah perintah yang saya gunakan untuk menginstal ruby-1.8.7 dan rails-3.0.7.

rvm install 1.8.7
rvm use 1.8.7
gem install rails -v=3.0.7

lalu saya mengetik railsdan mendapatkan:

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.

Saya juga telah mencoba penginstalan yang lebih menyeluruh, Seperti menginstal ulang rubygemssetelah beralih ke ruby-1.8.7, atau membuat gemet yang benar-benar baru, tetapi tidak berhasil.

Berikut info rvm:

ruby-1.8.7-p352@rails:

  system:
    uname:       "Darwin yicai.local 10.8.0 Darwin Kernel Version 10.8.0: Tue Jun  7 16:32:41 PDT 2011; root:xnu-1504.15.3~1/RELEASE_X86_64 x86_64"
    bash:        "/bin/bash => GNU bash, version 3.2.48(1)-release (x86_64-apple-darwin10.0)"
    zsh:         "/bin/zsh => zsh 4.3.9 (i386-apple-darwin10.0)"

  rvm:
    version:      "rvm 1.8.6 by Wayne E. Seguin (wayneeseguin@gmail.com) [https://rvm.beginrescueend.com/]"

  ruby:
    interpreter:  "ruby"
    version:      "1.8.7"
    date:         "2011-06-30"
    platform:     "i686-darwin10.8.0"
    patchlevel:   "2011-06-30 patchlevel 352"
    full_version: "ruby 1.8.7 (2011-06-30 patchlevel 352) [i686-darwin10.8.0]"

  homes:
    gem:          "/Users/nil/.rvm/gems/ruby-1.8.7-p352@rails"
    ruby:         "/Users/nil/.rvm/rubies/ruby-1.8.7-p352"

  binaries:
    ruby:         "/Users/nil/.rvm/rubies/ruby-1.8.7-p352/bin/ruby"
    irb:          "/Users/nil/.rvm/rubies/ruby-1.8.7-p352/bin/irb"
    gem:          "/Users/nil/.rvm/rubies/ruby-1.8.7-p352/bin/gem"
    rake:         "/Users/nil/.rvm/bin/rake"

  environment:
    PATH:         "/Users/nil/.rvm/gems/ruby-1.8.7-p352@rails/bin:/Users/nil/.rvm/gems/ruby-1.8.7-p352@global/bin:/Users/nil/.rvm/rubies/ruby-1.8.7-p352/bin:/Users/nil/.rvm/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/local/sbin"
    GEM_HOME:     "/Users/nil/.rvm/gems/ruby-1.8.7-p352@rails"
    GEM_PATH:     "/Users/nil/.rvm/gems/ruby-1.8.7-p352@rails:/Users/nil/.rvm/gems/ruby-1.8.7-p352@global"
    MY_RUBY_HOME: "/Users/nil/.rvm/rubies/ruby-1.8.7-p352"
    IRBRC:        "/Users/nil/.rvm/rubies/ruby-1.8.7-p352/.irbrc"
    RUBYOPT:      ""
    gemset:       "rails"

dan versi permata 1.8.10, yang terbaru.

Jawaban:


92

Saya mengalami masalah ini hari ini. Tidak sepenuhnya terkait dengan pertanyaan Anda, tetapi karena halaman ini adalah yang muncul di Google ketika saya mencari "Rails saat ini tidak diinstal di sistem ini" , saya pikir saya akan menambahkan jawaban saya:

Apa yang terjadi adalah saya menggunakan ruby ​​1.9.2 dengan rel untuk sementara waktu, tetapi kemudian saya perlu menggunakan ruby ​​1.8.7 untuk menjalankan beberapa skrip lain yang saya temukan.

Setelah itu, saya ingin mengubah sistem kembali menggunakan 1.9.2, dan di situlah masalah dimulai:

$ rvm list

=> ruby-1.8.7-p352 [ x86_64 ]
ruby-1.9.2-p290 [ x86_64 ]


$ rvm use 1.9.2

Saya pikir itu akan berhasil. Tapi tidak, itu memberi saya pesan "Rails saat ini tidak diinstal pada sistem ini" .

Apa yang saya lupa adalah bahwa saya telah mengkonfigurasi rel menggunakan gemet rvm. Jadi saya perlu menentukan gemset yang benar ketika saya memilih versi ruby ​​mana yang akan diaktifkan.

$ rvm gemset list_all


gemsets for ruby-1.8.7-p352 (found in /Users/asgeo1/.rvm/gems/ruby-1.8.7-p352)
global


gemsets for ruby-1.9.2-p290 (found in /Users/asgeo1/.rvm/gems/ruby-1.9.2-p290)
global
rails31


$ rvm use ruby-1.9.2-p290@rails31

Itu berhasil.


Saya bekerja untuk saya juga, meskipun saya baru menginstal satu versi. Ini telah ditetapkan sebagai default, tetapi untuk beberapa alasan tidak ditetapkan sebagai saat ini.
hcarreras

Terima kasih - setelah memutakhirkan Ruby dari 2.2.1 ke 2.2.3, saya mulai mendapatkan kesalahan ini. rvm menggunakan ruby-2.2.1 membuat rel kembali bahagia.
slocumro

111

Jika Anda menjalankan perintah rails segera setelah memasang rails , Anda perlu memulai ulang terminal sebelum perintah Anda dikenali.


17
doh! baiklah ada 15 menit dalam hidup saya, saya tidak akan pernah kembali. Terima kasih.
Adam Waite

Terima kasih ... ini seharusnya di atas. kesalahan konyol yang dilakukan semua orang.
Shashwat Kumar

Bekerja untuk saya. Tapi kenapa?
Akash Agarwal

@ AkashAggarwal karena ini mengeksekusi skrip rvm yang memungkinkan perintah rails dikenali (langkah yang mungkin ditambahkan ke .bash_profile Anda selama penginstalan). Atau Anda dapat melakukan apa yang disarankan Dhaulagiri untuk memuat ulang di shell saat ini.
Kyle Clegg

Ini jawaban yang benar. Mulai ulang terminal Anda.
lihat

32

Mac OS X, rbenv, dan rails

Saya mendapatkan masalah yang persis sama tetapi dengan rbenvdaripada rvm. Setelah memverifikasi .bash_profile.

.bash_profile

export PATH="$HOME/.rbenv/bin:/usr/local/bin:$PATH"

eval "$(rbenv init -)"

Mulai ulang cangkangnya

exec $SHELL -l

Periksa jalannya

echo $PATH

Akhirnya

Saya berulang kali menginstal dan mencopot rel tetapi tidak pernah ditempatkan di direktori .rbenv / bin setelah rbenv rehash. Pada akhirnya saya melakukan find . -name railsdan menghapus setiap permata yang dikembalikan dan menghapus rel. Kemudian:

$ gem install rails
$ rbenv rehash

$ which rails
/Users/palmerc/.rbenv/shims/rails

28

Saya memiliki masalah yang sama dan menemukan bahwa RVM tidak ditampilkan sebagai terinstal baik jika saya mencoba perintah rvm. Yang diperlukan untuk memperbaiki kedua masalah adalah menjalankan perintah ini di terminal

$ source ~/.rvm/scripts/rvm

Menyelamatkan hari ... Sekarang apa artinya? :)
ericpeters0n

13

Mulai ulang terminal Anda dan jalankan kembali perintah rel Anda


1
Wow, saya merasa sangat bodoh, itu berhasil juga untuk saya! Terkadang terlalu banyak berpikir bukanlah cara yang benar :)
Andrea

saya menggunakan linux, dan ini berhasil. terasa seperti menggunakan windows: D
Esgi Dendyanri

11

Rails tidak melaporkan bahwa itu tidak diinstal. Sistem Debian Anda memberi tahu Anda bahwa rel tidak terpasang. Satu hal tentang rvm adalah ia bergantung pada beberapa skrip bash shell yang rumit dan terkadang Anda perlu memulai shell baru agar perubahan muncul. Anda juga harus memastikan bahwa perintah rvm shell yang benar telah ditambahkan ke file .zshrc Anda. Juga periksa jalur Anda untuk memastikan jalur ~ / .rvm / gems / ... disertakan.


1
Ini untuk saya, hanya perlu keluar dari folder dan kembali ke konsol rel untuk mengambil lagi. Masalah dengan membiarkan jendela terminal terbuka selama berhari-hari ...
Toxaq

Ini juga untuk saya. Tidak pernah terpikir untuk menutup jendela terminal dan membuka kembali. Setelah saya melakukannya setelah saya mengupgrade Ruby, semuanya bekerja seperti yang diharapkan.
MikeH

9

Saya mengalami masalah ini menggunakan rbenv. Ternyata gem install railsmemang menginstal Rails tetapi railstidak dikenali sebagai dapat dieksekusi. Perbaikan bagi saya adalah lari rbenv rehash.

Saya menemukan perbaikan ini dan detail lebih lanjut tentang menyiapkan Rails 5 di https://gorails.com/setup/osx/10.11-el-capitan


Bagi saya, saya melakukannya rmvsetelah rbenv dan Rails bekerja. Itu merusak segalanya termasuk cd, bundle, dan rel, dan sekarang saya benar-benar bahkan tidak bisa mengklik kanan dengan trackpad saya di mac. Waktu yang menyenangkan.
Ka Mok

3

Saya memiliki masalah serupa, tetapi dengan rbenv.

Saya awalnya memasang ruby ​​di bash. Kemudian saya bermain-main dengan .bashrc di VIM, mengacaukan file itu, dan mengatur ulang kembali ke default. Dengan melakukan itu, saya tanpa sadar menghapus rbenv $ PATH yang diekspor. Karena itu, terminal saya tidak lagi mengenali bahwa saya telah memasang ruby.

Saya mengunjungi kembali halaman instalasi ruby ​​( https://gorails.com/setup/ubuntu/15.04 ) dan mencoba mengatur jalur rbenv saya lagi dengan perintah ini:

echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc

Itu gagal.

Untungnya, saya sudah beralih ke zsh (dengan oh-my-zsh) antara waktu saya mengacaukan .bashrc saya dan waktu saya mencoba mengakses irb dari terminal saya.

Solusi saya adalah mengatur jalur rbenv sesuai panduan instalasi, tetapi dengan mengganti semua contoh .bashrcdengan .zshrcseperti itu:

echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.zshrc

Semoga ini membantu!


1

Inilah yang telah saya lakukan. Dan masalahnya hilang. Karenanya saya kira masalah terpecahkan.

rvm use system

ubah ke sistem ruby. hapus semua permata di dalamnya menggunakan perintah yang disediakan dan dijelaskan di sini . kemudian saya menginstal versi ruby ​​yang diinginkan dari awal:

rvm install 1.8.7
rvm install rails -v 3.0.7

kemudian bundle install

untuk detail lebih lanjut, mungkin perlu menggali prosedur pemasangan permata.




1

Saya mengalami masalah ini hari ini. Saya belum 100% menyelesaikannya, tetapi di tab baru saya dapat melakukannya rvm use 2.5.5dan kemudian rails -vberfungsi dengan baik.

➜  my-repo git:(next_release) ruby -v
ruby 2.5.5p157 (2019-03-15 revision 67260) [x86_64-darwin18]
➜  my-repo git:(next_release) 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.
➜  my-repo git:(next_release) rvm use 2.5.5
Using /Users/amberwilkie/.rvm/gems/ruby-2.5.5
➜  my-repo git:(next_release) rails -v
Could not find rake-12.3.3 in any of the sources
Run `bundle install` to install missing gems.
➜  my-repo git:(next_release) bundle install

1

Saya mengalami masalah ini, tetapi masalah telah teratasi. Saya menggunakan macOS, saya tidak menggunakan rvm, saya hanya menggunakan HomeBrew, pertama saya gunakan gem envuntuk mendapatkan direktori instalasi semua permata, milik saya adalah:

$ gem env
RubyGems Environment:
   -RUBYGEMS VERSION: 3.1.2
   -RUBY VERSION: 2.7.1 (2020-03-31 patchlevel 83) [x86_64-darwin19]
   -INSTALLATION DIRECTORY: /usr/local/lib/ruby/gems/2.7.0
   -USER INSTALLATION DIRECTORY: /Users/myname/.gem/ruby/2.7.0
...

Kemudian Anda mencoba pergi ke /usr/local/lib/ruby/gems/2.7.0untuk menemukan direktori file yang dapat dieksekusi dari permata rel yang telah Anda instal, misalnya /usr/local/lib/ruby/gems/2.7.0/bin:, lalu tambahkan ke variabel lingkungan jalur


0

Saya memiliki masalah yang sama tetapi solusi di atas tidak membantu.

Ini adalah skenario saya

rvm list

=> ree-1.8.7-2012.02 [ i686 ]
   ruby-1.9.3-p125 [ x86_64 ]

which ruby
  /Users/dev/.rvm/rubies/ree-1.8.7-2012.02/bin/ruby
which rails
  /usr/bin/rails
gem list --local
  ..
  rails (3.2.8)
  rails2_asset_pipeline (0.1.20)
  railties (3.2.8)
  ..

rvm use ruby-1.9.3-p125
which ruby
  /Users/dev/.rvm/rubies/ruby-1.9.3-p125/bin/ruby
which rails
  /Users/dev/.rvm/gems/ruby-1.9.3-p125/bin/rails

Dengan mencopot rel dan rel dan memasang kembali rel saat menggunakan ree, masalah saya teratasi.

Semoga ini bisa membantu orang lain dalam situasi saya, tidak yakin bagaimana saya bisa melakukannya: S



0

Hanya mengalami masalah yang sama dan tidak dapat menemukan jawaban. Inilah yang saya lakukan:

temukan jalur rel saat ini

$ which rails

mengembalikan sesuatu seperti ini: / usr / local / rails

Hapus versi saat ini :

$ sudo rm -rf /usr/local/rails 

Pasang kembali rel

$ sudo gem install rails

2
JANGAN lakukan ini untuk Mac OS
Pants

0

Saya mengalami masalah yang sama ini dan tidak ada jawaban yang diberikan membantu, jadi saya pikir saya akan membagikan solusi saya jika itu mungkin berguna untuk orang lain.

Saya mengotak-atik file .profiledan saya .bashrcdan sepanjang jalan saya mengacaukan instalasi RVM saya. Masih tidak yakin persis apa yang saya lakukan, tetapi perbaikannya mudah. Baru saja menjalankan perintah berikut, yang membersihkan semua pengaturan jalur sistem Anda untuk RVM:

rvm get [head|stable] --auto-dotfiles

Perhatikan bahwa jika Anda menjalankan RVM versi lama, ini dapat meningkatkan pengaturan Anda, yang mungkin bukan yang Anda inginkan.


0

Solusi yang mungkin adalah dengan tidak memelihara dua file konfigurasi yang berbeda .bash_profiledan.bashrc

Solusi seperti yang disarankan dalam posting luar biasa ini tentang perbedaan antara .bash_profiledan .bashrcadalah mengambil .bashrcdari .bash_profilefile Anda , lalu memasukkan PATH dan pengaturan umum .bashrc.

Mengutip,

tambahkan baris berikut ke .bash_profile:

if [ -f ~/.bashrc ]; then source ~/.bashrc fi

kutipan akhir


0

Saya mengalami kesalahan ini setelah memperbarui ruby. Saya harus menjalankan 'bundle install' untuk memperbaikinya.


0

Cobalah untuk menentukan gemset secara eksplisit di Gemfile Anda:

source 'https://rubygems.org'
ruby "2.2.3"
#ruby-gemset=rails424

0

Coba ini:

Anda perlu mengubah preferensi emulator terminal Anda untuk mengizinkan shell login.

Terkadang diperlukan untuk digunakan /bin/bash --loginsebagai perintah.

$ bin/bash --login
$ rails -v

0

Saya mendapat pesan ini di Mac saya:

Rel saat ini tidak diinstal pada sistem ini. Untuk mendapatkan versi terbaru, cukup ketik:

dan itu tentang $PATHketidaktepatan. Sistem memiliki versi rails ( /usr/bin/ruby) yang kedaluwarsa . Path ke versi ruby ​​( $HOME/.rbenv/versions/2.3.0/bin) yang Anda pilih harus mendahului versi sistem yang sudah usang bersama $PATHvar, seperti di bawah ini:

export PATH="$HOME/.rbenv/versions/2.3.0/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:$PATH"

sesuaikan dengan versi ruby ​​Anda.


0

Untuk MacOS (High Sierra):

Tokaido adalah sistem penginstal Rails yang direkomendasikan pada halaman panduan Rails "Memulai" untuk Mac OS. Tetapi tidak hanya menginstal, ia menjalankan skrip shell-nya sendiri. Jika Anda mulai menggunakan itu, yang merupakan sumber lingkungan shell-nya sendiri, kemudian memulai terminal tanpa meluncurkan dari shell Tokaido, ini terjadi, karena perintah "rails" kembali ke kode rel sistem asli di Mac.

Untuk saya, perintah 'which rails' di terminal normal kembali

/usr/bin/rails

Tetapi setelah meluncurkan shell Tokaido, 'which rails' memberikan jalur ini:

/Users/charlesross/.tokaido/Gems/2.2.0/bin/rails

0

Entah dari mana Rails saat ini tidak dipasang tetapi, yang memperbaikinya rvm use ruby-2.6.0

... dan memverifikasi jalur saya di .bash_profile export PATH="$PATH:$HOME/.rvm/bin"


0

Saya sedang melihat-lihat sumber dan menemukan pesan kesalahan lain yang menyarankan pengguna menjalankan perintah berikut.

Saya menjalankan perintah dan semuanya sekarang berfungsi. Tidak ada saran di atas yang berhasil untuk saya. Jalankan perintah dari dalam aplikasi Rails yang baru Anda buat.

gem pristine --all
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.