【问题标题】:Can't find gem railties (>= 0.a) with executable rails (Gem::GemNotFoundException)找不到带有可执行导轨 (Gem::GemNotFoundException) 的 gem railties (>= 0.a)
【发布时间】:2021-07-06 18:19:52
【问题描述】:

我正在尝试构建一个新应用程序或检查 rails 的版本。我收到以下错误:

Traceback (most recent call last):
    2: from /usr/local/bin/rails:22:in `<main>'
    1: from /Users/vivanksharma/.rbenv/versions/2.5.1/lib/ruby/2.5.0/rubygems.rb:263:in `bin_path'
/Users/vivanksharma/.rbenv/versions/2.5.1/lib/ruby/2.5.0/rubygems.rb:289:in `find_spec_for_exe': can't find gem railties (>= 0.a) with executable rails (Gem::GemNotFoundException)

我搜索了许多不同的解决方案,但没有一个对我有用。

任何帮助都会很棒。

ruby -v ruby​​ 2.5.1p57(2018-03-29 修订版 63029)[x86_64-darwin17]

rbenv -v rbenv 1.1.1

即使执行bundle install 也会出现错误Could not locate Gemfile。

【问题讨论】:

  • 尝试gem install bundler,然后bundle
  • 试过sudo gem install bundler 然后bundle 仍然是同样的问题@Vishal
  • 你试过gem install rails 吗?
  • 现在试试@Vishal 安装后会怎样?
  • gem install bundler 和 bundle install ?

标签: ruby-on-rails ruby


【解决方案1】:

尝试运行 gem install bundler 然后运行bundle

如果你仍然得到错误然后运行,

bundle install --path vendor/bundle

【讨论】:

    【解决方案2】:

    我想运行rvm reset,它开始工作了。我找到的解决方案与 rvm 警告“警告!PATH 未正确设置,/Users/xxx/.rvm/gems/ruby-2.5.3/bin 不在首位。”有关。 (OSX Catalina)

    【讨论】:

    • 这对我也有用。只需 rvm reset 命令。
    【解决方案3】:

    我在创建新 gemset 和查询 rails 版本时遇到了同样的错误。就我而言,我只是还没有安装 rails gem。
    我只需要执行以下操作:

    对于当前的稳定版本:
    $ gem install rails

    要获取特定版本,例如 5.2.2.0:
    gem install rails --version=5.2.2.0

    希望对您有所帮助。

    【讨论】:

    • 这为我解决了。非常感谢!!
    【解决方案4】:

    这很可能发生在您尝试安装 gem 时没有针对较旧的 ruby​​ 版本指定该 gem 的版本。 gem 将尝试安装更新的版本,同时您使用的是不兼容的 ruby​​ 版本。因此,让我们以 Rails 为例。假设您使用的是较旧的 Ruby 版本,例如 2.1。然后你不能安装最新版本的 Rails。您必须安装像 Rails 4 这样的旧版本:

    rvm-prompt
    ruby-2.1.2
    rvm gemset create validations_test
    rvm use @validations_test
    

    安装适用于 ruby​​ 版本的 bundler 版本:

    gem install bundler -v 1.17.3
    

    安装适用于 Ruby 2.1 的 Rails 4:

    gem install rails -v 4.2
    

    Nokogiri 可能会安装失败。所以它会提示你安装旧版本的 nokogiri:

    gem install nokogiri -v 1.9.1
    

    现在完成 Rails 的安装(因为 Nokogiri 已经完成了所有需要为 Rails 4 安装的 gem):

    gem install rails -v 4.2
    

    现在请确保您在创建新项目时使用的是 Rails 4:

    rails _4.2_ new validations_test 
    

    【讨论】:

      【解决方案5】:

      我唯一的问题是我需要运行 rails 和 bundle exec。

      % rails g --help; echo $?
      ...
      can't find gem railties (>= 0.a) with executable rails (Gem::GemNotFoundException)
      1
      
      % bundle exec rails g --help; echo $?
      ...
      Usage: rails generate GENERATOR [args] [options]
      ...
      0
      

      【讨论】:

      • 很好解释。
      【解决方案6】:
      1. 您应该拥有 2.5.0 以上的 ruby​​ 版本
      2. 然后运行命令:gem update
      3. 现在创建一个新应用程序。

      【讨论】:

      • 谢谢,这为我解决了! /usr/local 中的“rails” binstub 很难追踪,虽然我的环境是 RVM,但我的错误与顶帖完全相同。
      【解决方案7】:

      当我添加“sudo”时,我解决了:

      sudo rails -v
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-05-31
        • 2019-08-17
        • 2018-04-12
        • 2023-02-04
        • 1970-01-01
        • 2018-01-22
        • 2018-07-05
        • 1970-01-01
        相关资源
        最近更新 更多