#ruby-on-rails #windows #sqlite #file-not-found
#ruby-on-rails #Windows #sqlite #файл не найден
Вопрос:
Моя ОС — Windows 7.
Моя проблема в том, что при попытке запуска rails server
возникает ошибка. Я установил sqlite3
драгоценный камень, даже sqlite-ruby
gem, и все еще ничего.
Я уже не знаю, что больше делать.
Если кому-либо нужна дополнительная информация, запросите ее, и я ее выложу.
Полная ошибка:
C:/Ruby192/lib/ruby/gems/1.9.1/gems/sqlite3-1.3.3-x86-mingw32/lib/sqlite3.rb:6:in `require': no such file to load -- sqlite3/sqlite3_native (LoadError)
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/sqlite3-1.3.3-x86-mingw32/lib/sqlite3.rb:6:in `rescue in <top (required)>'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/sqlite3-1.3.3-x86-mingw32/lib/sqlite3.rb:2:in `<top (required)>'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.12/lib/bundler/runtime.rb:68:in `require'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.12/lib/bundler/runtime.rb:68:in `block (2 levels) in require'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.12/lib/bundler/runtime.rb:66:in `each'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.12/lib/bundler/runtime.rb:66:in `block in require'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.12/lib/bundler/runtime.rb:55:in `each'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.12/lib/bundler/runtime.rb:55:in `require'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.12/lib/bundler.rb:120:in `require'
from C:/Users/JorWan/Desktop/JorWan/ASCENDSTUDIO/RoR/intento2/config/application.rb:7:in `<top (required)>'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/railties-3.0.7/lib/rails/commands.rb:28:in `require'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/railties-3.0.7/lib/rails/commands.rb:28:in `block in <top (required)>'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/railties-3.0.7/lib/rails/commands.rb:27:in `tap'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/railties-3.0.7/lib/rails/commands.rb:27:in `<top (required)>'
from script/rails:6:in `require'
from script/rails:6:in `<main>'
Комментарии:
1. Ах, извините, я забыл сказать, что эта ошибка возникает, когда я пытаюсь выполнить «rails server»
Ответ №1:
загрузите требуемый исполняемый файл и библиотеку dll с http://www.sqlite.org/download.html извлеките в корзину вашего ruby (c:Ruby192bin )
Ответ №2:
Забудьте все так называемые «ответы», никакая компиляция исходных текстов или загрузка предварительно скомпилированных библиотек не решит эту проблему, поверьте мне, я все перепробовал, проблема кроется где-то в другом. Вот как это работает в Windows:
bundle update sqlite3
Вероятно, после этой вы получите другую подобную ошибку, касающуюся nokogiri, исправьте ее с помощью команды:
bundle update nokogiri
Наслаждайтесь вашим приложением Ruby!
Ответ №3:
Находится ли этот файл ( /sqlite3/sqlite3_native
) в вашей PATH
переменной окружения? Это должно быть для того, чтобы этот драгоценный камень работал. Если вам нужно проверить, попробуйте использовать echo %PATH%
в командной строке. Если в конечном итоге вам нужно добавить его в свой path, вы можете либо SET PATH=%PATH%;C:PathToSqlite3
, либо изменить переменные среды, выбрав PropertiesAdvancesEnvironment Variables
опцию после щелчка правой кнопкой мыши My Computer
. Отредактируйте переменную path, чтобы она содержала ваш path и альт!
Комментарии:
1. на самом деле нет:/ , но как я могу это сделать? я имею в виду, это rubygem, нет? почему и / или как я бы это сделал?
2. у меня уже установлен ruby bin для переменных среды, и sqlite3 там, зная это, мне нужно установить что-нибудь еще?
3. не могли бы вы показать мне путь, который у вас есть, чтобы увидеть пример или идею, более или менее напоминающую, как или где это находится?
4. он уже рассказал вам, как проверить вашу переменную PATH —
echo %PATH% on the command prompt
илиselecting the PropertiesAdvancesEnvironment Variables option after right-clicking on My Computer
5. я не спрашиваю об этом, я имею в виду, я прошу пример printscreen его ПУТИ, чтобы увидеть более или менее, где я могу получить URL sqlite3 на моем ПК и посмотреть, как он установил ПУТЬ
Ответ №4:
Этот URL предоставляет пошаговое описание и решение. Надеюсь, у вас это сработает. http://rubyonwindowsguides.github.io/book/ch02-05.html
Комментарии:
1. Я точно следовал этому руководству и не могу успешно создать собственные библиотеки, необходимые для драгоценного камня sqlite3. Кроме того, команды, используемые в руководстве, не отражают текущие имена файлов связанного файла .tar, на загрузке которого настаивает автор, поэтому необходимо отредактировать несколько команд.
Ответ №5:
Если вы извлекли «exe»-ы и «dll»-ы из ссылки для загрузки Sqlite в папку bin Ruby, и у вас все еще есть эта проблема. Попробуйте это:
bundle update
gem uninstall sqlite3
Учитывая выбор между несколькими версиями sqlite3, выберите последний вариант «Все версии». Введите последнее число здесь
Выберите gem для удаления:
1. sqlite3-1.3.13
2. sqlite3-1.3.13-x64-mingw32
3. Все версии
>3
.
.
Если вы удалите этот драгоценный камень, эти зависимости не будут соблюдены.
Продолжить удаление? [yN]
>y
gem install sqlite3 --platform=ruby
rails server
Это должно сработать.
Прочитайте эту ссылку для получения дополнительных объяснений, если вам подходит приведенное выше.