Ruby on Rails перестал работать после установки netbeans?
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
2 ответа
Похоже, что есть несоответствие в имени переменной метода; это должен быть "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", сохраняйте и наслаждайтесь!
-Kai
Поскольку я давно не общался с NetBeans, мой ответ был бы однозначным - нет. Однако я подозреваю, что ruby 1.9.2-p290 вводит эту ошибку. Я сделал обновление сегодня и БАМ; это не помогло моей системе точно так же, как и вашей. Таким образом... 1.9.2-p290 является виновником.
--Kai
PS> Рад, что смог помочь...