Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 新Rails 3.2.8项目出现错误-'require';:无法加载这样的文件--sqlite3/sqlite3\u native(LoadError)_Ruby On Rails_Ruby_Sqlite - Fatal编程技术网

Ruby on rails 新Rails 3.2.8项目出现错误-'require';:无法加载这样的文件--sqlite3/sqlite3\u native(LoadError)

Ruby on rails 新Rails 3.2.8项目出现错误-'require';:无法加载这样的文件--sqlite3/sqlite3\u native(LoadError),ruby-on-rails,ruby,sqlite,Ruby On Rails,Ruby,Sqlite,我刚刚创建了一个新的AmazonLinux实例,并安装了Ruby1.9.3和Rails3.2.8 创建新项目后,我立即收到由于sqlite3而导致的失败。错误是: [root@xxxxx fun]# rails server /usr/local/share/gems/gems/sqlite3-1.3.6/lib/sqlite3.rb:6:in `require': cannot load such file -- sqlite3/sqlite3_native (LoadError) f

我刚刚创建了一个新的AmazonLinux实例,并安装了Ruby1.9.3和Rails3.2.8

创建新项目后,我立即收到由于sqlite3而导致的失败。错误是:

[root@xxxxx fun]# rails server
/usr/local/share/gems/gems/sqlite3-1.3.6/lib/sqlite3.rb:6:in `require': cannot load such file -- sqlite3/sqlite3_native (LoadError)
    from /usr/local/share/gems/gems/sqlite3-1.3.6/lib/sqlite3.rb:6:in `rescue in <top     (required)>'
    from /usr/local/share/gems/gems/sqlite3-1.3.6/lib/sqlite3.rb:2:in `<top     (required)>'
我对bundle安装非常了解。sqlite3的版本为1.3.6

我已安装以下软件包:

ruby19-1.9.3.0-7.17.amzn1.i686
ruby19-devel-1.9.3.0-7.17.amzn1.i686
ruby19-irb-1.9.3.0-7.17.amzn1.noarch
ruby19-libs-1.9.3.0-7.17.amzn1.i686
rubygem19-io-console-0.3-7.17.amzn1.i686
rubygem19-rdoc-3.9.4-7.17.amzn1.i686
rubygems19-1.8.11-7.17.amzn1.noarch
sqlite-3.6.20-1.8.amzn1.i686
sqlite-devel-3.6.20-1.8.amzn1.i686
find / | grep bin/ruby
有什么办法可以让事情顺利进行吗?谢谢

更新 为了“好玩”,我从Gemfile中注释掉了gemsqlite3行,并再次尝试了“railsserver”。首先,它抱怨没有javascript运行时(我可以修复),但随后它得到了以下结果。我的安装似乎出了问题

[root@xxxx fun]# rails server
/usr/local/share/gems/gems/railties-3.2.8/lib/rails/railtie/configuration.rb:85:in `method_missing': undefined method `active_record' for #<Rails::Application::Configuration:0x9e68f58> (NoMethodError)
    from /srv/rails/fun/config/application.rb:54:in `<class:Application>'
    from /srv/rails/fun/config/application.rb:13:in `<module:Fun>'
    from /srv/rails/fun/config/application.rb:12:in `<top (required)>'
[root@xxxx乐趣]#rails服务器
/usr/local/share/gems/gems/railties-3.2.8/lib/rails/railtie/configuration.rb:85:in'method_missing':未定义的方法'active_record'(nomethoderor)
from/srv/rails/fun/config/application.rb:54:in`'
从/srv/rails/fun/config/application.rb:13:in`'
从/srv/rails/fun/config/application.rb:12:in`'

您可能有路径问题

要查看是否安装了多个版本的Ruby、Rails或gem,请执行以下操作:

ruby19-1.9.3.0-7.17.amzn1.i686
ruby19-devel-1.9.3.0-7.17.amzn1.i686
ruby19-irb-1.9.3.0-7.17.amzn1.noarch
ruby19-libs-1.9.3.0-7.17.amzn1.i686
rubygem19-io-console-0.3-7.17.amzn1.i686
rubygem19-rdoc-3.9.4-7.17.amzn1.i686
rubygems19-1.8.11-7.17.amzn1.noarch
sqlite-3.6.20-1.8.amzn1.i686
sqlite-devel-3.6.20-1.8.amzn1.i686
find / | grep bin/ruby
查找/grep bin/rails 查找/| grep bin/gem

在Amazon服务器上,我通常保持系统Ruby的原样,并使用优秀的Ruby构建脚本(在我看来比RVM更好)安装我自己当前的Ruby

如果您有多个Ruby,我建议您设置您的环境以选择一个,例如使用
Ruby build
或在
.bashrc
文件或
/etc/environment
文件中设置路径,如下所示:

PATH=/opt/ruby/1.9.1-p134/bin;$PATH
如果您使用的是RVM,我建议您卸载它并改为使用ruby build

要卸载RVM,我使用以下脚本:

https://github.com/SixArm/sixarm_unix_shell_scripts/blob/master/rvm-uninstall-danger

您可能有路径问题

要查看是否安装了多个版本的Ruby、Rails或gem,请执行以下操作:

ruby19-1.9.3.0-7.17.amzn1.i686
ruby19-devel-1.9.3.0-7.17.amzn1.i686
ruby19-irb-1.9.3.0-7.17.amzn1.noarch
ruby19-libs-1.9.3.0-7.17.amzn1.i686
rubygem19-io-console-0.3-7.17.amzn1.i686
rubygem19-rdoc-3.9.4-7.17.amzn1.i686
rubygems19-1.8.11-7.17.amzn1.noarch
sqlite-3.6.20-1.8.amzn1.i686
sqlite-devel-3.6.20-1.8.amzn1.i686
find / | grep bin/ruby
查找/grep bin/rails 查找/| grep bin/gem

在Amazon服务器上,我通常保持系统Ruby的原样,并使用优秀的Ruby构建脚本(在我看来比RVM更好)安装我自己当前的Ruby

如果您有多个Ruby,我建议您设置您的环境以选择一个,例如使用
Ruby build
或在
.bashrc
文件或
/etc/environment
文件中设置路径,如下所示:

PATH=/opt/ruby/1.9.1-p134/bin;$PATH
如果您使用的是RVM,我建议您卸载它并改为使用ruby build

要卸载RVM,我使用以下脚本:

https://github.com/SixArm/sixarm_unix_shell_scripts/blob/master/rvm-uninstall-danger

这有帮助吗:?谢谢你的建议,我以前看过那篇文章并排除了它。为了安全起见,我尝试了它建议的步骤,但仍然看到了相同的问题。据我所知,amazon linux使用了yum package manager,当您运行以下操作时会发生什么:
yum安装ruby-devel-sqlite-devel
?是的,此系统正在使用yum。我检查了软件包,下面是我安装的(ruby devel提取了1.8.7代码)。我用我安装的软件包列表更新了原始帖子。似乎所有正确的东西都在那里。我不明白为什么一个独立的ruby脚本可以工作,但是rails会发出嘎嘎声——某种类型的加载路径问题?这有帮助吗:?谢谢你的建议,我以前看过那篇文章,排除了它。为了安全起见,我尝试了它建议的步骤,但仍然看到了相同的问题。据我所知,amazon linux使用了yum package manager,当您运行以下操作时会发生什么:
yum安装ruby-devel-sqlite-devel
?是的,此系统正在使用yum。我检查了软件包,下面是我安装的(ruby devel提取了1.8.7代码)。我用我安装的软件包列表更新了原始帖子。似乎所有正确的东西都在那里。我不明白为什么一个独立的ruby脚本可以工作,但是rails会发出嘎嘎声——某种类型的加载路径问题?谢谢Joel!这(最终)成功了。我之前删除了Ruby 1.8.7的所有痕迹,所以系统上只有1.9.3(这个过程中一定有什么原因导致了我的问题)。今天我卸载了所有gems,使用ruby build作为普通用户安装了1.9.1-p134,然后重新安装了rails 3.2.8。我现在可以成功地创建一个新项目并运行它。非常感谢你的建议!谢谢你,乔尔!这(最终)成功了。我之前删除了Ruby 1.8.7的所有痕迹,所以系统上只有1.9.3(这个过程中一定有什么原因导致了我的问题)。今天我卸载了所有gems,使用ruby build作为普通用户安装了1.9.1-p134,然后重新安装了rails 3.2.8。我现在可以成功地创建一个新项目并运行它。非常感谢你的建议!