Подтвердить что ты не робот

Rails - система не может найти указанный путь

Я установил Rails и Ruby на Windows с помощью railsinstaller. Проблема в том, что когда я запускаю команду rails, она дает мне: "Система не может найти указанный путь".

Я запускаю окна 7 x64 и Ruby 2.20.

Я попытался удалить Rails и снова установить его; это не помогает. Команды Ruby выполняются, например ruby -v, но rails -v= не работает.

4b9b3361

Ответ 2

Перейдите в C:\RailsInstaller\Ruby2.2.0. В некоторых из .bat файлов вы найдете следующее:

@ECHO OFF
IF NOT "%~f0" == "~f0" GOTO :WinNT
@"C:\Users\emachnic\GitRepos\railsinstaller-windows\stage\Ruby2.2.0\bin\ruby.exe" "C:/Users/emachnic/GitRepos/railsinstaller-windows/stage/Ruby2.2.0/bin/tilt" %1 %2 %3 %4 %5 %6 %7 %8 %9
GOTO :EOF
:WinNT
@"C:\Users\emachnic\GitRepos\railsinstaller-windows\stage\Ruby2.2.0\bin\ruby.exe" "%~dpn0" %*

Удалите это и вставьте в текст ниже:

@ECHO OFF
IF NOT "%~f0" == "~f0" GOTO :WinNT
ECHO.This version of Ruby has not been built with support for Windows 95/98/Me.
GOTO :EOF
:WinNT
@"%~dp0ruby.exe" "%~dpn0" %*

Ответ 3

Это связано с ошибкой в ​​RailsInstaller, где два файла имеют расположение ruby.exe с жестким кодом для работы только на машине RailsInstaller dev. В C:\RailsInstaller\Ruby2.2.0\bin\rails.bat (это установочная папка по умолчанию, у вас может быть rails.bat где-то еще, если вы выбрали другую папку установки), вы найдете эти две строки:

@"C:\Users\emachnic\GitRepos\railsinstaller-windows\stage\Ruby2.2.0\bin\ruby.exe" "C:/Users/emachnic/GitRepos/railsinstaller-windows/stage/Ruby2.2.0/bin/rails" %1 %2 %3 %4 %5 %6 %7 %8 %9

@"C:\Users\emachnic\GitRepos\railsinstaller-windows\stage\Ruby2.2.0\bin\ruby.exe" "%~dpn0" %*

Пользователь emachnic - разработчик RailsInstaller. В качестве обходного пути вы можете изменить эти папки на те, которые находятся на вашем компьютере. Для папки установки по умолчанию вы измените их на:

@"C:\RailsInstaller\Ruby2.2.0\bin\ruby.exe" "C:\RailsInstaller\Ruby2.2.0\bin\rails" %1 %2 %3 %4 %5 %6 %7 %8 %9

@"C:\RailsInstaller\Ruby2.2.0\bin\ruby.exe" "%~dpn0" %*

Вам нужно будет повторить это изменение для двух аналогичных строк в C:\RailsInstaller\Ruby2.2.0\bin\bundle.bat.

Запустите rails -v, чтобы проверить, что рельсы теперь работают.

Вы можете следить за этой проблемой в своем репозитории git здесь: https://github.com/railsinstaller/railsinstaller-windows/issues/70

Ответ 4

Я открыл все .bat файлы в C:\RailsInstaller\Ruby2.2.0\bin в Sublime Text и заменил на Ctrl+Shift+F,

это
@"C:\Users\emachnic\GitRepos\railsinstaller-windows\stage\Ruby2.2.0\bin\ruby.exe"
с этим
@"%~dp0ruby.exe"
по всем файлам, имеющим совпадение.

Взял всего пару секунд. Это может помочь кому-то, кто наткнулся на него после меня, и его обескураживает идея выполнить поиск и заменить на несколько файлов.

Ответ 5

Я решил эту проблему на своей машине Windows, выполнив

  • комплект поставки gem
  • установка пакета
  • Номер 1 и 2 устранили проблему и установили все драгоценные камни.

Ответ 6

Я создал супер простой способ сделать решение @JayantBhawal (отлично работал у меня) с Windows Powershell, который вы должны все это с тех пор, как это кажется проблемой, исключительной для машин Windows. Он выглядит сложным, но на самом деле все, что он делает, заменяет все экземпляры C:\Users\emachnic\GitRepos\railsinstaller-windows\stage\Ruby2.2.0\bin\ruby.exe на %~dp0ruby.exe в .bat файлах. Просто откройте Powershell, cd до C:\RailsInstaller\Ruby2.3.0\bin и скопируйте этот небольшой script:

Get-ChildItem . -Filter *.bat | Foreach-Object {
(Get-Content $_.name ) | ForEach-Object { 
    $_ -replace "C:\\Users\\emachnic\\GitRepos\\railsinstaller-windows\\stage\\Ruby2.2.0\\bin\\ruby.exe", "%~dp0ruby.exe" 
} | Set-Content $_.name}

После того, как вы нажмете enter, вы должны обнаружить, что все экземпляры этой строки были заменены. GL

изменить: обновленная версия 2.2.0 → 2.3.0

Ответ 7

Я столкнулся с этим вопросом пару дней назад. Похоже, что после многократного запуска Rails в Windows вы играете с командной строкой cmd, меняете цвета фона команд и текста или открываете одновременно несколько окон командной строки, а затем пытаетесь запустить команда 'rails server' 'rails new App' или 'bundle install' вы получите сообщение "Система не может найти указанный путь"

Я решил эту проблему, выполнив команду: 'gem install _____' (заполните эту строку: 'bundle', 'bundler' и 'byebug'), которые являются именами трех файлов .bat(запустите эту команду с каждым именем .bat файла ONE AT TIME). Как только вы это сделаете, проверьте его! Попробуйте создать новое приложение, установить пакет и сервер rails. Это сработало для меня.

Ответ 8

Я столкнулся с той же проблемой и запустил gem install rails в командной строке, в которой он работает.

С уважением, T.S.

Ответ 9

Я нашел ваш вопрос, исследуя ту же проблему раньше, и я просто исправил ее для себя (Windows 8.1), поэтому я решил ответить на нее. Я пытался запустить Ruby 2.2 на Windows 8.1 с помощью RailsInstaller. Теперь я могу запустить Ruby и Rails, хотя и более старую версию. Я думаю, что это проблема с 64-битной архитектурой или 32-разрядной версией, последняя из которых, похоже, работает нормально. Вот как я это сделал:

  • Сначала прочитайте этот пост в блоге и посмотрите, не решит ли это вашу проблему, хотя я не думаю, что так будет. Я использовал regedit.exe для поиска экземпляра AutoRun. У меня его не было, поэтому я попытался сделать следующий шаг.

  • Удалите версию RailsInstaller версии Ruby 2.2 (перейдите в свой control panel > programs and features, затем удалите RailsInstaller.

  • Затем установите версию 1.9.3. Перейдите здесь и CTRL + F "1.9", чтобы найти версию RailsInstaller Ruby 1.9.3.

  • После установки обязательно запустите gem update --system, чтобы обновить все ваши драгоценные камни. Мне не удалось запустить rails new, пока я не обновил gem. Теперь все работает нормально.

Итак, вы будете использовать немного более старую версию Ruby, но все должно работать нормально. Это решение сработало для меня, и я надеюсь, что это сработает для вас.

Ответ 10

Я считаю, что исправление для вышеупомянутой проблемы очень просто.

Проблема возникает, потому что в каталоге установки пакет, который у вас есть, принимает путь по умолчанию. Например, скажем, что вы выполняете следующую команду: установить пакет Теперь, чтобы выполнить эту команду, пакетный файл пакета должен быть настроен правильно. По умолчанию пакетный файл будет иметь следующую структуру:

@ECHO OFF
IF NOT "%~f0" == "~f0" GOTO :WinNT
@"C:\Users\emachnic\GitRepos\railsinstaller-windows\stage\Ruby2.3.0\bin\ruby.exe" 
"C:/Users/emachnic/GitRepos/railsinstaller-windows/stage/Ruby2.3.0/bin/bundle" %1 %2 %3 %4 %5 %6 %7 %8 %9
GOTO :EOF
:WinNT
@"C:\Users\emachnic\GitRepos\railsinstaller-windows\stage\Ruby2.3.0\bin\ruby.exe" "%~dpn0" %

Для меня рельсы установлены в C диске: C:\RailsInstaller\Ruby2.3.0\bin, поэтому указанный выше пакетный файл должен быть сконфигурирован примерно так:

@ECHO OFF
IF NOT "%~f0" == "~f0" GOTO :WinNT
@"C:/RailsInstaller/Ruby2.3.0/bin/ruby.exe" 
"C:/RailsInstaller/Ruby2.3.0/bin/bundle" %1 %2 %3 %4 %5 %6 %7 %8 %9
GOTO :EOF
:WinNT
@"C:/RailsInstaller/Ruby2.3.0/bin/ruby.exe" "%~dpn0" %

Это позволит решить указанную выше проблему.

Вышеприведенное решение должно применяться, если мы столкнулись с проблемой выполнения команды.