Запуск java файла из grunt, не открывает порт для браузера
Я запускаю BrowserStackTunnel.jar
плагин grunt grunt-exec
(использовали node child_process.exec, но те же результаты)
с командой java -jar BrowserStackTunnel.jar -force APIKEY localhost,8000,false
То, что делает фактический файл Java, подключается через ssh к экземпляру Amazon Browserstack и открывает порт на 45691, веб-сайт browserstack производит опрос этого порта на локальном хосте, где приложение Java обслуживает небольшой фрагмент, содержащий переданные параметры.
Если я запустил команду из CLI, она отлично работает, и я вижу, что порт открыт на netstat. На веб-сайте browserstack я получаю экран успеха.
Но если я запустил команду из grunt-exec, она отображает только запрос SYN
.
Выход в командную строку одинаков, оба показывают успех
Я не уверен, что вызывает это. Я запускаю на windows7, node v0.10.12, grunt-cli v0.1.9, grunt v0.4.1 и grunt exec v0.4.2
Любая идея, что вызывает это или как его отлаживать? Я думал о проблеме разрешения, но я вроде невежественный
Ответы
Ответ 1
У меня была такая же проблема, и я понял, лучше, если я использую двоичные файлы BrowserStackLocal для создания туннеля. Я решил довольно сложную конфигурацию здесь: Ember.js - CircleCI - BrowserStack
Файлы BrowserStackLocal находятся здесь: http://www.browserstack.com/local-testing (бинарные файлы)
Ответ 2
Вы пробовали использовать Браузерный Chrome-плагин? Он был запущен в этом январе и позволяет тестировать локальные файлы без запуска cli-туннеля.
Ответ 3
Как только дочерний процесс будет создан, grunt переходит к следующей команде. Если ничего не происходит, процесс grunt завершается и берет с собой ребенка.
Попробуйте добавить задачу grunt-contrib-watch после вызова grunt-exec. Он должен поддерживать процесс ворчания, а дочерний процесс с ним.