您的Ruby版本是2.3.1,但您的Gemfile指定了2.5.1

时间:2018-11-29 17:59:04

标签: ruby-on-rails ruby

每当我运行Rails命令时,它都会指出我的Ruby版本是2.3.1,但我的Gemfile指定了2.5.1。但是,“ ruby​​ -v”返回“ ruby​​ 2.5.1p57(2018-03-29修订版63029)[x86_64-linux]”,我的路径没有对ruby 2.3.1的引用,并且运行“ rvm list”显示正确的绿色突出显示2.5.1。 Bundler已安装,当我尝试在已创建的Rails文件夹中运行bundle install时,出现另一个“您的Ruby版本为2.3.1,但您的Gemfile指定了2.5.1”的消息。请告知。

$ PATH:

<ul>
   <li *ngFor="let data of User">
      <span>{{data.name}}</span>
   </li>
</ul>

有关答案的其他信息: 按预期,“哪条轨道”将返回“ /home/alowverus/.rvm/gems/ruby-2.5.1/bin/rails”

3 个答案:

答案 0 :(得分:0)

我会尝试(无特定顺序):

  • which rails,是正确的吗?
  • bundle exec rails c(或您执行的任何命令)
  • rvm reload
  • 要开始清理,请rvm implode,然后尝试重新安装rvm和您的Ruby版本。

答案 1 :(得分:0)

在根目录中创建两个文件,其中一个 .ruby-version 提及 ruby​​-2.3.1 .ruby-gemset 提及 @ gemset-name 和cd返回同一目录,该目录将为该应用程序创建rvm包装器,然后运行

rvm current

输出类似的东西

ruby-2.3.1@gemset-name

然后运行

gem install bundler
bundle

可能对您有帮助

答案 2 :(得分:0)

您的Ruby版本是2.3.8,但是您的Gemfile指定了2.3.1

ruby -v [检查版本2.3.8的版本],确保Ruby版本在ruby版本以及GemFile中应该相同,如果版本不相同,则在bash_profile上放置put命令(终端)rbenv global 2.3.8 & rbenv shell 2.3.8(您可以相应指定的版本),然后删除Gemfile.lock,然后安装bundle并安装bundler。这些步骤对我有效。

rbenv global 2.3.8
rbenv shell 2.3.8
delete your Gemfile.lock
install bundle 
install bundler