Запуск проекта модулей в devserver с помощью команды gcloud
Я создал проект с использованием maven со следующим "layout" - 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 preview app run", поэтому я не думаю, что это проблема maven.
Почему это происходит и какие-либо идеи, как решить?
1 ответ
Это распространенное семейство ошибок при запуске серверов на компьютере. Ошибка исходит от wsgi_server
код, который пытается открыть сокет на порту 8081
Я предполагаю для module2
, Сбой, возможно, из-за того, что порт уже используется другим процессом.
Вы можете проверить, какие процессы прослушивают эти порты, используя команды netstat
для окон или lsof -i
для Linux/ Mac. Завершение любых процессов, использующих порты, которые запросит ваш devserver (вероятно, просто предыдущий запуск devserver), должно позволить новому devserver связываться с этим портом.