我先改变我的Gemfile(我删除了评论,使文本更短):
source 'https://rubygems.org' gem 'rails','4.2.0' gem 'sqlite3' gem 'sass-rails','~> 5.0' gem 'uglifier','>= 1.3.0' gem 'coffee-rails','~> 4.1.0' gem 'jquery-rails' gem 'turbolinks' gem 'jbuilder','~> 2.0' gem 'sdoc','~> 0.4.0',group: :doc group :development,:test do gem 'byebug' gem 'web-console','~> 2.0' gem 'spring' end
至:
source 'https://rubygems.org' gem 'rails','4.2.0' gem 'sass-rails','5.0.1' gem 'uglifier','2.5.3' gem 'coffee-rails','4.1.0' gem 'jquery-rails','4.0.3' gem 'turbolinks','2.3.0' gem 'jbuilder','2.2.3' gem 'sdoc','0.4.0',group: :doc group :development,:test do gem 'sqlite3','1.3.9' gem 'byebug','3.4.0' gem 'web-console','2.0.0.beta3' gem 'spring','1.1.3' end
现在当我尝试运行rails服务器与rails server -b $IP -p $PORT我得到以下错误消息:
/usr/local/rvm/gems/ruby-2.1.5@rails4/gems/sass-rails-5.0.1/lib/sass/rails/helpers.rb:11:in `<top (required)>': uninitialized constant Sass::Script (NameError) from /usr/local/rvm/gems/ruby-2.1.5@rails4/gems/sass-rails-5.0.1/lib/sass/rails.rb:8:in `require' from /usr/local/rvm/gems/ruby-2.1.5@rails4/gems/sass-rails-5.0.1/lib/sass/rails.rb:8:in `<top (required)>' from /usr/local/rvm/gems/ruby-2.1.5@rails4/gems/sass-rails-5.0.1/lib/sass-rails.rb:1:in `require' from /usr/local/rvm/gems/ruby-2.1.5@rails4/gems/sass-rails-5.0.1/lib/sass-rails.rb:1:in `<top (required)>' from /usr/local/rvm/gems/ruby-2.1.5@global/gems/bundler-1.7.6/lib/bundler/runtime.rb:76:in `require' from /usr/local/rvm/gems/ruby-2.1.5@global/gems/bundler-1.7.6/lib/bundler/runtime.rb:76:in `block (2 levels) in require' from /usr/local/rvm/gems/ruby-2.1.5@global/gems/bundler-1.7.6/lib/bundler/runtime.rb:72:in `each' from /usr/local/rvm/gems/ruby-2.1.5@global/gems/bundler-1.7.6/lib/bundler/runtime.rb:72:in `block in require' from /usr/local/rvm/gems/ruby-2.1.5@global/gems/bundler-1.7.6/lib/bundler/runtime.rb:61:in `each' from /usr/local/rvm/gems/ruby-2.1.5@global/gems/bundler-1.7.6/lib/bundler/runtime.rb:61:in `require' from /usr/local/rvm/gems/ruby-2.1.5@global/gems/bundler-1.7.6/lib/bundler.rb:133:in `require' from /home/ubuntu/workspace/hello_app/config/application.rb:7:in `<top (required)>' from /usr/local/rvm/gems/ruby-2.1.5@rails4/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:78:in `require' from /usr/local/rvm/gems/ruby-2.1.5@rails4/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:78:in `block in server' from /usr/local/rvm/gems/ruby-2.1.5@rails4/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:75:in `tap' from /usr/local/rvm/gems/ruby-2.1.5@rails4/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:75:in `server' from /usr/local/rvm/gems/ruby-2.1.5@rails4/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:39:in `run_command!' from /usr/local/rvm/gems/ruby-2.1.5@rails4/gems/railties-4.2.0/lib/rails/commands.rb:17:in `<top (required)>' from /home/ubuntu/workspace/hello_app/bin/rails:8:in `require' from /home/ubuntu/workspace/hello_app/bin/rails:8:in `<top (required)>' from /usr/local/rvm/gems/ruby-2.1.5@rails4/gems/spring-1.1.3/lib/spring/client/rails.rb:27:in `load' from /usr/local/rvm/gems/ruby-2.1.5@rails4/gems/spring-1.1.3/lib/spring/client/rails.rb:27:in `call' from /usr/local/rvm/gems/ruby-2.1.5@rails4/gems/spring-1.1.3/lib/spring/client/command.rb:7:in `call' from /usr/local/rvm/gems/ruby-2.1.5@rails4/gems/spring-1.1.3/lib/spring/client.rb:26:in `run' from /usr/local/rvm/gems/ruby-2.1.5@rails4/gems/spring-1.1.3/bin/spring:48:in `<top (required)>' from /usr/local/rvm/gems/ruby-2.1.5@rails4/gems/spring-1.1.3/lib/spring/binstub.rb:11:in `load' from /usr/local/rvm/gems/ruby-2.1.5@rails4/gems/spring-1.1.3/lib/spring/binstub.rb:11:in `<top (required)>' from /home/ubuntu/workspace/hello_app/bin/spring:13:in `require' from /home/ubuntu/workspace/hello_app/bin/spring:13:in `<top (required)>' from bin/rails:3:in `load' from bin/rails:3:in `<main>'
在更改Gemfile之前,我尝试运行服务器,它的工作原理是因为新的更改.另外我知道这个错误说ruby-2.1.5,而在我的Gemfile中,我放了4.2.0,但是我不知道如何改变这个,还是这个问题呢?我试图在源代码行下添加ruby“2.1.5”,没有改变.此外,我将“rails”,“4.2.0”更改为2.1.5,但更新失败,告诉我在本机上可用的宝石中找不到gem’rails(= 2.1.5)ruby’.
解决方法
如此说:
https://github.com/josh/sprockets-es6/issues/15
使用sass-rails v 5.0.2.这应该可以解决你的问题.所以在宝石文件中更改:
gem 'sass-rails','5.0.3'
要么
gem 'sass-rails','5.0.2'
更新:
由于链接现在已经下了,所以这个问题实际上是与宝石版本5.0.1所以只是运行:
bundle update sass-rails
最终将saas-rails gem更新到最新版本.或者您可以在上面指定的gemfile中输入版本.