在Windows上启动Rails服务器时出错

时间:2016-08-03 22:56:29

标签: ruby-on-rails ruby windows server

启动rails server命令后,Ruby终端没有启动服务器并写下以下内容:

C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/sqlite3-1.3.11-x64-mingw32/lib/sqlite3.rb:6:in `require': cannot load such file -- sqlite3/sqlite3_native (LoadError)
    from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/sqlite3-1.3.11-x64-mingw32/lib/sqlite3.rb:6:in `rescue in <top (required)>'
    from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/sqlite3-1.3.11-x64-mingw32/lib/sqlite3.rb:2:in `<top (required)>'
    from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/runtime.rb:86:in `require'
    from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/runtime.rb:86:in `block (2 levels) in require'
    from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/runtime.rb:81:in `each'
    from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/runtime.rb:81:in `block in require'
    from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/runtime.rb:70:in `each'
    from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/runtime.rb:70:in `require'
    from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler.rb:102:in `require'
    from C:/Sites/testing/config/application.rb:7:in `<top (required)>'
    from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/railties-5.0.0/lib/rails/commands/commands_tasks.rb:88:in `require'
    from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/railties-5.0.0/lib/rails/commands/commands_tasks.rb:88:in `block in server'
    from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/railties-5.0.0/lib/rails/commands/commands_tasks.rb:85:in `tap'
    from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/railties-5.0.0/lib/rails/commands/commands_tasks.rb:85:in `server'
    from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/railties-5.0.0/lib/rails/commands/commands_tasks.rb:49:in `run_command!'
    from C:/tools/ruby23/lib/ruby/gems/2.3.0/gems/railties-5.0.0/lib/rails/commands.rb:18:in `<top (required)>'
    from bin/rails:4:in `require'
    from bin/rails:4:in `<main>'

在寻找类似问题的答案时,我还没有找到任何可行的解决方案。我可以这样说:

  1. 在目录中创建应用程序,其中路径仅为英文符号。
  2. 我尝试使用以下方法修复问题: gem cleanup bundle install
  3. 我尝试使用bundle exec rails server启动服务器。
  4. 我试图删除包含&#34;问题&#34;在gemfile中。
  5. 还试图用所有宝石完全重新安装Ruby和Rails。
  6. 所有这些都没有帮助,所以我非常感谢能够使用我的案例解决方案!

    P.S。我正在研究:Windows 8.1(64位),Ruby 2.3.0,Rails 5.0.0

1 个答案:

答案 0 :(得分:1)

找到你的sqlite3 gemspec文件。一个例子是

`/usr/local/share`/gem/specifications/sqlite3-1.3.7.gemspec`

Windows:C:\Ruby21\lib\ruby\gems\2.1.0\specifications.

您应该根据您的Rubygem路径和sqlite3版本进行调整。编辑上面的文件并查找以下行

s.require_paths=["lib"]

将其更改为

s.require_paths= ["lib/sqlite3_native"]

希望有所帮助!!!