2015-05-11 2 views
0

Я использую make-файл для хранения моих процессов. Для одного из этих процессов требуется сервер. Кроме того, мой script.make такова:Makefile: Как запустить 2 отдельных оболочки?

end: server script 
    # runs the 2 other tasks, 1st `server` then `script` 
script: 
    node ./node_script_with_server_queries.js 
server : 
    node ./node_modules/.bin/forever ./node_modules/.bin/http-server 

Тогда я запускает Makefile, это начать штраф сервера, но затем повесьте над навсегда:

$make -f ./script.make 
warn: --minUptime not set. Defaulting to: 1000ms 
warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms 
Starting up http-server, serving ./ on: http://0.0.0.0:8080 
Hit CTRL-C to stop the server 

я могу заставить его работать правильно, если я работает вручную в задачи в 2 разных терминалах.

Как запускать 2 разных оболочки для каждой задачи программно?

+0

Почему вы используете, чтобы сделать это в первую очередь ?! – Biffen

+0

Это более крупный проект, я упростил код для вопроса. У меня на самом деле есть 12 make-файлов с ~ 30 командами. Кроме того, я новичок в такой разработке на стороне сервера и задаюсь вопросом, как действовать дальше. – Hugolpz

+0

Одним из немногих дьявольских вариантов в этом случае будет использование 'make -j2'. Здесь вы даете _make_ разрешение на запуск рецептов для двух целей одновременно. Просто то, что вы искали. – bobbogo

ответ

1

Вам необходимо отправить процесс сервера в фоновом режиме, так что сценарий клиент может выполнить:

 
server : 
    node ./node_modules/.bin/forever ./node_modules/.bin/http-server & 
Смежные вопросы