0

2 天前,我成功安装了 Ruby On Rails 并开始玩教程。一切都很好,很高兴。然后今天我想继续我的教程,但有些东西确实像往常一样。首先我得到了这个错误

ActiveRecord::ConnectionNotEstablished

嗯,谷歌了一下,然后我想我应该尝试开始一个新项目,当我尝试生成一个控制器时,我收到了这条消息

me@lenovo:~/ror/blog$ rails g controller posts 
/home/me/.rvm/gems/ruby-1.9.2-p290/gems/execjs-1.2.10/lib/execjs/external_runtime.rb:130:in `which_unix': undefined local variable or method `cmd' for #<ExecJS::ExternalRuntime:0xae47d84> (NameError)

然后我记得那天晚些时候我在一切顺利之后安装了 Netbeans 6.9.1 和 RoR 模块。会不会是 Netbeans 搞砸了我的 RoR 安装?

有谁知道如何重置这个?如果这笔交易,我不介意摆脱 netbeans

使用 Ubuntu 11.10

4

2 回答 2

0

看起来方法的变量名不匹配;它应该是“cmd”,但它是“名称”

/Users/kj/.rvm/gems/ruby-1.9.2-p290/gems/execjs-1.2.10/lib/execjs/external_runtime.rb:130:in `which_unix': undefined local variable or method `cmd' for #<ExecJS::ExternalRuntime:0x00000100bf0b48> (NameError)

快速浏览一下有问题的文件会发现:

def which_unix(name)
 if File.executable? cmd
   cmd
 else
   path = ENV['PATH'].split(File::PATH_SEPARATOR).find { |path|
     File.executable? File.join(path, cmd)
   }
   path && File.expand_path(cmd, path)
 end
end

将方法的变量名称从“name”更改为“cmd”,保存并享受!

——凯

于 2011-12-05T20:38:09.003 回答
0

由于我很长时间没有接触过 NetBeans,所以我的回答是明确的不。不过,我怀疑的是 ruby​​ 1.9.2-p290 引入了这个错误。我今天确实升级了,然后 bam;它在我的系统上失败了,就像在你的系统上一样。因此... 1.9.2-p290 是罪魁祸首。

——凯

PS> 很高兴我能帮上忙...

于 2011-12-06T06:34:32.383 回答