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

Ruby on Rails на Windows XP CTRL + C в консоли, не останавливающей дворняжку

В настоящее время я изучаю Ruby on Rails. Я слежу за Learning Rails подкастом и скринкастами.

Я столкнулся с проблемой, а скорее раздражением. Каждый раз, когда screencast заставляет меня убивать mongrel сервер, я вынужден закрыть консольное окно, потому что CTRL + C не убивает его, как должно. Затем я должен открыть новое окно консоли, перейти к моему устройству rails и выпустить команду ruby ​​ script/server ', чтобы перезапустить ее.

То, что я ищу, возможно, является причиной этого, способ исправить это или другие предложения, чтобы сделать этот процесс быстрее и/или менее раздражающим. Или даже возможно пакетный файл или ярлык, чтобы открыть окно cmd прямо там, где оно мне нужно?

4b9b3361

Ответ 1

Используйте Ctrl + Pause/Break. Он остановит сервер.

enter image description here

Ответ 2

Ctrl + Pause/Break принудительно закрывает сервер. Это не нормально. В любом случае у моего ноутбука Dell нет ключа.

Поэтому используйте это:
вместо rails s используйте ruby script/rails s.
Ctrl + C отлично справится с этим. Протестировано.

Ответ 4

Я считаю, что это может произойти, если вы ловите Exception и не поднимаете его. SIG-INT был пойман там и в конечном итоге не убьет процесс.

Ответ 5

Если все не удается, нажмите Ctrl + Alt + Delete, откройте диспетчер задач и просто запустите рубиновый процесс;) Ruby process

Ответ 6

У меня такая же проблема и в Windows, поэтому не могу помочь вам в решении проблемы с Ctrl + C. Но, я могу указать вам на Окно командной строки Windows PowerToys здесь - добавляет "Open Command Window Here" to ваше окно Explorer, это требование для разработки (любого вида) на машинах Windows.

Ответ 7

Если вы начинаете mongrel немного иначе:

$ cd myrailsapp
$ mongrel_rails start

то вы можете остановить его следующим образом:

$ mongrel_rails stop

Вы можете получить дополнительную информацию здесь. Это может быть интересно: Mongrel как услуга

Ответ 8

Проверьте версию рельсов и используйте

ctrl + c + pause/break для 2.3.2
ctrl + c для 2.1.2

Ответ 9

После того, как вы нажмете Ctrl + c, отправьте запрос на сервер, обновив страницу своего браузера, где вы ее открыли. Командная строка теперь скажет Exiting и вернется в командную строку.