尝试将 JRuby 1.2.0 和 Rails 2.3.2 与嵌入式 Derby 数据库一起使用。我已复制 derbytools.jar
和 derby.jar
至 $RUBY_HOME/lib
, 还rake db:migrate
仍然给出:
The driver encountered an error:
cannot load Java class org.apache.derby.jdbc.ClientDriver
Aaaand...我预感并想通了。所以,我会在这里发布这个,以防其他人遇到和我一样的问题。
我在网上找到的几乎所有文档都有以下
database.yml
Derby 的配置:development:
adapter: jdbc
driver: org.apache.derby.jdbc.ClientDriver
url: jdbc:derby:[db];create=true
username: xxx
password: xxx
这可能适用于客户端/服务器设置,但对于嵌入式 Derby 设置,您需要:
development:
adapter: jdbc
driver: org.apache.derby.jdbc.EmbeddedDriver
url: jdbc:derby:[db];create=true
username: xxx
password: xxx
请注意“EmbeddedDriver”,而不是“ClientDriver”。
最佳答案
要回答,因为我讨厌在我的个人资料中看到那个红色块。
当您使用嵌入式 derby 时,ActiveRecord-JDBC 中还有一个微妙的错误——如果您不给它一个用户名和密码,则没有任何作用。我已经找到了这个错误的原因,并且正在提交一个补丁,但是如果你遇到和我一样的问题,请告诉我,我会在这里发布代码。
关于ruby-on-rails - 将嵌入式 Derby 与 JRuby on Rails 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/728626/