Rails - система не может найти указанный путь
Я установил Rails и Ruby на Windows с помощью railsinstaller. Проблема в том, что когда я запускаю команду rails, она выдает мне: "Система не может найти указанный путь".
Я использую Windows 7 x64 и Ruby 2.20.
Я попытался удалить Rails и установить его снова; это не помогает Ruby команды выполняются, как ruby -v
, но rails -v=
не работает
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. В 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
Решение указано на github проблемах railsinstaller - https://github.com/railsinstaller/railsinstaller-windows/issues/73
Я решил эту проблему на моем компьютере с Windows, выполнив
- gem install bundler
- пакетная установка
- Номера 1 и 2 решили проблему и установили все драгоценные камни.
Я открыл все .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"
во всех файлах, которые имели совпадение.
Заняло всего пару секунд. Это может помочь кому-то, кто наткнулся на него после меня и напуган идеей поиска и замены нескольких файлов.
Я создал очень простой способ решения @JayantBhawal (отлично сработал для меня) с помощью Windows Powershell, который вы должны иметь, поскольку это кажется проблемой исключительно для компьютеров с Windows. Это выглядит сложно, но на самом деле все, что он делает, это заменяет все экземпляры C:\Users\emachnic\GitRepos\railsinstaller-windows\stage\Ruby2.2.0\bin\ruby.exe
с %~dp0ruby.exe
в.bat файлах. Просто откройте Powershell, перейдите на 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, вы должны обнаружить, что все экземпляры этой строки были заменены. GL
редактировать: обновленная версия 2.2.0 -> 2.3.0
Я сталкивался с этой проблемой пару дней назад. Кажется, что внезапно после того, как вы многократно запускаете Rails в Windows, играете с командной строкой cmd, меняете цвет фона команды и текста или открываете более одного окна командной строки одновременно, а затем вы пытаетесь запустить По команде 'rails server' 'rails new App' или 'bundle install' вы получите сообщение "Система не может найти указанный путь"
Я решил эту проблему, выполнив команду: 'gem install _____' (заполните эту строку с помощью: 'bundle', 'bundler' и 'byebug'), которые являются именами трех файлов.bat (запустите эту команду с каждым. имя файла летучей мыши ОДИН ВРЕМЯ). Как только вы это сделаете, проверьте это! Попробуйте создать новое приложение, установить пакет и сервер rails. Это сработало для меня.
Я столкнулся с той же проблемой и работает gem install rails
в командной строке это работает.
С уважением, ТС
Я считаю, что решение вышеуказанной проблемы очень просто.
Проблема возникает из-за того, что в каталоге установки ваш пакет выбирает путь по умолчанию. Например, предположим, что вы выполняете следующую команду: bundle install Now Для выполнения этой команды ваш пакетный файл пакета должен быть правильно настроен. По умолчанию пакетный файл будет иметь примерно такую структуру:
@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" %
Для меня rails установлен на диске 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" %
Это решит вышеуказанную проблему.
Вышеуказанное решение должно применяться везде, где мы сталкиваемся с проблемой запуска команды.
Я нашел ваш вопрос во время исследования той же проблемы ранее, и я просто исправил ее для себя (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
пока я не сделал обновление драгоценного камня. Теперь все работает отлично.
Итак, вы будете использовать немного более старую версию Ruby, но все должно работать нормально. Это решение сработало для меня, и я надеюсь, что оно работает для вас.