Запуск проекта модулей в devserver с помощью команды gcloud

Я создал проект с использованием maven со следующим «макетом» — proj-ear — module1-war — module2-war.

Запуск с помощью «mvn appengine:devserver» работает нормально, оба приложения/модуля запускаются и отображаются в консоли администратора. Однако я не могу запустить его с помощью «mvn gcloud: run» (что, я считаю, необходимо, если/когда я хочу переместить модуль на управляемую виртуальную машину?)

Я получил: ...

[INFO] INFO: Starting API server at: `http://localhost:50500`

[INFO] INFO: Starting module "module1" running at: `http://localhost:8080`

[INFO] INFO: Applying all pending transactions and saving the datastore

...

[INFO] google.appengine.tools.devappserver2.wsgi_server.BindError: Unable to bind localhost:8081

[ERROR] Error: gcloud app xxx exit code is: 1

...

Использование mvn: run приводит к вызову фактической команды «запуск приложения для предварительного просмотра gcloud», поэтому я не думаю, что это проблема maven.

Почему это происходит и есть идеи, как решить?


person Chuck Lega    schedule 19.12.2014    source источник


Ответы (1)


Это распространенное семейство ошибок при запуске серверов на компьютере. Ошибка возникает из-за кода wsgi_server, который пытается открыть сокет на порту 8081, я полагаю, для module2. Это не удается, вероятно, из-за того, что порт уже занят другим процессом.

Вы можете проверить, какие процессы прослушивают эти порты, используя команды netstat для Windows или lsof -i для linux/mac. Завершение любых процессов, использующих порты, которые будет запрашивать ваш сервер разработки (вероятно, просто предыдущий запуск сервера разработки), должно позволить новому серверу разработки привязаться к этому порту.

person Nick    schedule 02.01.2015