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


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

Я использую windows 7 x64 и Ruby 2.20.

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

10 52

10 ответов:

войти 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" %*

это связано с ошибкой в 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 чтобы убедиться, что rails теперь работает.

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

решение указано на GitHub вопросы railsinstaller -https://github.com/railsinstaller/railsinstaller-windows/issues/73

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

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

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

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

  1. gem install bundler
  2. bundler install
  3. номер 1 и 2 Исправлена проблема и установлены все драгоценные камни.

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

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, вы должны найти, что все экземпляры этой строки были заменены. ГЛ

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

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

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

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

С уважением, Т. С.

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

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

  2. удалите версию RailsInstaller Ruby 2.2 (зайдите в свой control panel>programs and features удалить RailsInstaller.

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

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

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

Я считаю, что исправить эту проблему очень просто.

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

@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 следовательно, приведенный выше файл bundle должен быть настроен примерно так:

@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" %

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

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