【问题标题】:When I runBundle update, I get a (SyntaxError) after setting up a new rails app? Why is this happening当我运行Bundle update 时,我在设置一个新的rails 应用程序后得到一个(SyntaxError)?为什么会这样
【发布时间】:2013-02-20 10:57:11
【问题描述】:

我是 Rails 新手,正在学习 Hartl Rails 教程并使用 Railsinstaller 进行安装

C:\Sites\sample_app>捆绑更新

C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/bundler-1.0.22/lib/bundler/ dsl.rb:7:in instance_eval': C:/Sites/sample_app/Gemfile:43: syntax error, unexp ected $end, expecting keyword_end (SyntaxError) from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/bundler-1.0.22 /lib/bundler/dsl.rb:7:inevaluate' 来自 C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/bundler-1.0.22 /lib/bundler/definition.rb:17:in build' from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/bundler-1.0.22 /lib/bundler.rb:138:indefinition' 来自 C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/bundler-1.0.22 /lib/bundler/cli.rb:262:in update' from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/bundler-1.0.22 /lib/bundler/vendor/thor/task.rb:22:inrun' 来自 C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/bundler-1.0.22 /lib/bundler/vendor/thor/invocation.rb:118:in invoke_task' from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/bundler-1.0.22 /lib/bundler/vendor/thor.rb:263:indispatch' 来自 C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/bundler-1.0.22 /lib/bundler/vendor/thor/base.rb:386:in start' from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/bundler-1.0.22 /bin/bundle:13:in' 来自 C:/RailsInstaller/Ruby1.9.3/bin/bundle:19:in load' from C:/RailsInstaller/Ruby1.9.3/bin/bundle:19:in'

这是我的 gemfile。它看起来是正确的,但我只是不知道捆绑安装出错了。

Source 'https://rubygems.org'

gem 'rails', '3.2.12'

group :development, :test do
gem 'sqlite3', '1.3.5'
gem 'rspec-rails', '2.11.0'


# Gems used only for assets and not required
# in production environments by default.
group :assets do
gem 'sass-rails',   '3.2.5'
gem 'coffee-rails', '3.2.2'
gem 'uglifier', '1.2.3'
gem 'jquery-rails', '2.0.2'
gem 'rb-readline'

group :test do
gem 'capybara', '1.1.2'
end

group :production do
gem 'pg', '0.12.2'
end

【问题讨论】:

  • 到底是什么问题?!在有人提供帮助之前,您可能需要提供更多详细信息。
  • @dvelopment 请在此处发布您的 Gemfile。

标签: gem ruby-on-rails-3.2 bundle bundler railstutorial.org


【解决方案1】:

加载 sqlite3 gem 的开发和测试组永远不会结束。应该是这样的:

group :development, :test do
    gem 'sqlite3', '1.3.5'
    gem 'rspec-rails', '2.11.0'
end

【讨论】:

  • 谢谢,效果很好!我是新手,但我仍然不敢相信我错过了。
  • @dvelopment 不客气。 :) 如果此答案解决了您的问题,您应该将其标记为答案,以便显示问题已解决。
【解决方案2】:

您还没有关闭test, developmentassets 的群组。你需要像这样关闭它们:

group :development, :test do
  gem 'sqlite3', '1.3.5'
  gem 'rspec-rails', '2.11.0'
end

# Gems used only for assets and not required
# in production environments by default.
group :assets do
  gem 'sass-rails',   '3.2.5'
  gem 'coffee-rails', '3.2.2'
  gem 'uglifier', '1.2.3'
  gem 'jquery-rails', '2.0.2'
  gem 'rb-readline'
end

PS : 尽量保持你的代码缩进。只需浏览文件,就可以帮助找出未关闭的标签。 :)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-08-15
    • 2019-02-08
    • 2015-07-25
    • 1970-01-01
    • 2022-12-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多