【问题标题】:What does this error mean as an output from the rails command?这个错误作为 rails 命令的输出是什么意思?
【发布时间】:2013-01-05 15:26:49
【问题描述】:
from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/bundler-1.0.22/lib/bundler/runtime.rb:68:in `block (2 levels) in 
from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/bundler-1.0.22/lib/bundler/runtime.rb:66:in `each'
from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/bundler-1.0.22/lib/bundler/runtime.rb:66:in `block in require'
from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/bundler-1.0.22/lib/bundler/runtime.rb:55:in `each'
from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/bundler-1.0.22/lib/bundler/runtime.rb:55:in `require'
from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/bundler-1.0.22/lib/bundler.rb:122:in `require'
from C:/RAILSI~1/INTERE~1/config/application.rb:7:in `<top (required)>'
from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-3.2.9/lib/rails/commands.rb:53:in `require'
from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-3.2.9/lib/rails/commands.rb:53:in `block in <top (required)>'
from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-3.2.9/lib/rails/commands.rb:50:in `tap'
from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-3.2.9/lib/rails/commands.rb:50:in `<top (required)>'
from script/rails:6:in `require'
from script/rails:6:in `<main>'

C:\RAILSI~1\INTERE~1\config>

这是我可以获取的所有输出,因为 DOS 没有向上滚动。

我正在尝试将 Rails 应用程序从 Linux 移植到 Windows。唯一不同的是这个应用程序使用 mysql。所以安装了MYSQL gem。两者都使用 ruby​​ 191,都使用 rails 329。

我已经进行了一些挖掘,它缝合了它,因为当 mysql gem 被编译为 6.0 时,我放在那里的 mysql.dll 是 5.0 版本。客户端 6.0 似乎不存在。

我通常不会问,但我对此束手无策。

【问题讨论】:

  • 仅供参考,这是在 Windows 中设置控制台缓冲区的方法:superuser.com/a/161188/42660
  • 如果您将缓冲区设置为合理的大小,命令窗口绝对会“向上滚动”。即使没有,您也可以通过管道将 stdout/stderr 传输到文件中。
  • 我试过了,我试过 rails s -p 8080 > out.log 它是空的,上帝我讨厌 windows。
  • P.s 改变缓冲区大小也没有用,我先看了。
  • 没有 MySQL 6.0 吗?

标签: mysql ruby-on-rails windows


【解决方案1】:

如果您使用的是 MySQL gem 的 2.9.x 版本,它是针对 MySQL 6.0 构建的,您可以从 MySQL 网站下载正确版本的 C 连接器。安装mysql gem 后,它应该会给你一个 URL 去下载正确的版本。但是,如果您使用bundle install 安装mysql,则可能不会显示安装后消息。

http://dev.mysql.com/get/Downloads/Connector-C/mysql-connector-c-noinstall-6.0.2-win32.zip/from/http://cdn.mysql.com/

有将二进制库作为 ZIP 文件获取的 URL。

http://dev.mysql.com/downloads/connector/c/

如果第一个链接不起作用,则会提供包含所有可用 C 连接器下载的 URL。您需要 Windows(x86,32 位)、ZIP 存档(第二个;文件名不以 vs2005 结尾的那个)。

如果 MySQL 库仍然不匹配,请执行 gem list mysql 以获取已安装的版本,然后手动卸载并重新安装 gem:

gem uninstall mysql

gem install -v=x.x.x mysql

x.x.x 替换为之前报告的版本号。安装 gem 后,它应该会为您提供需要安装的 C 连接器的 URL。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-04-06
    • 1970-01-01
    • 1970-01-01
    • 2023-03-11
    • 2013-04-08
    • 1970-01-01
    相关资源
    最近更新 更多