我正在按照rails tutorial中的说明操作,但在尝试使用scaffold命令时遇到了问题。
运行时:
rails generate scaffold User name:string email:string
我得到了错误:
C:/RailsInstaller/Ruby1.9.2/lib/ruby/gems/1.9.1/gems/activerecord-3.1.0/lib/active_record/connection_adapters/abstract/connection_specification.rb:71:in `rescue in establish_connection': Please install the sqlite3 adapter: `gem install activerecord-sqlite3-adapter` (can't activate sqlite3 (~> 1.3.4), already activated sqlite3-1.3.3-x86-mingw32. Make sure all dependencies are added to Gemfile.) (RuntimeError)
运行:
gem install activerecord-sqlite3-adapter
我得到了错误:
ERROR: Could not find a valid gem 'activerecord-sqlite3-adapter' (>= 0) in any repository
ERROR: Possible alternatives: activerecord-jdbcsqlite3-adapter, activerecord-sqlserver-adapter, activerecord-nulldb-adapter, activerecord-spatialite-adapter, activerecord-simpledb-adapter
我的Gemfile看起来像这样:
source 'http://rubygems.org'
gem 'rails', '3.1.0'
gem 'sqlite3', '1.3.3'
...
我运行的是Windows7 x64操作系统。
有什么想法吗?
发布于 2011-09-11 02:48:04
好了,我找到问题所在了。我注意到我的Rails安装同时具有SQLite 1.3.3和1.3.4。我将Gemfile从:
gem 'sqlite3', '1.3.3'
至:
gem 'sqlite3', '1.3.4'
这就解决了问题。感谢@holger-just在their answer中为我指出了错误消息中的相关行。
发布于 2011-09-22 23:09:40
建议的安装命令:
gem install activerecord-jdbc-sqlite3-adapter
实际安装命令:
gem install activerecord-jdbcsqlite3-adapter
发布于 2011-09-10 21:09:19
错误消息的重要部分是以下代码片段:
can't activate sqlite3 (~> 1.3.4), already activated sqlite3-1.3.3-x86-mingw32. Make sure all dependencies are added to Gemfile.
要解决这个问题,您应该始终通过bundle exec
运行命令,如下所示
bundle exec rails generate scaffold User name:string email:string
这样,你就可以让bundler完全控制你的$LOAD_PATH
,这可能会解决这些问题。
https://stackoverflow.com/questions/7371809
复制相似问题