Как просмотреть команды оболочки, используемые eclipse для «запуска конфигурации» - PullRequest
36 голосов
/ 04 июня 2010

Учитывая "запустить конфигурацию" в Eclipse, я хочу распечатать соответствующую команду оболочки, которая будет использоваться для его запуска.

Например: Прямо сейчас в Eclipse, если я нажму «play», он запустится:

mvn assembly:directory -Dmaven.test.skip=true

Я не вижу этой команды, я просто знаю, что это то, что IDE должно выполнить в какой-то момент. Тем не менее, некоторые из других конфигураций выполнения являются гораздо более сложными с длинными путями к классам и параметрами виртуальной машины, и, честно говоря, иногда я понятия не имею, какой будет эквивалентная команда оболочки (особенно когда речь идет о Flex).

Должен быть какой-то способ доступа к команде оболочки, которая будет связана с «Запустить конфигурацию» в Eclipse / Flex Builder. Эта информация должна быть доступна, и это заставляет меня поверить, что кто-то написал плагин для ее отображения. Или, может быть, в Eclipse уже есть опция для доступа к этому.

Так есть ли способ, по существу, преобразовать конфигурацию запуска Eclipse в команду оболочки?

(только для контекста: я спрашиваю, потому что пишу сценарий bash, который автоматизирует все, что я делаю во время разработки - от заполнения базы данных до открытия Firefox и очистки кэша перед запуском веб-приложение. Таким образом, каждая команда, которую я запускаю из IDE, должна существовать в сценарии. Некоторые из них сложно определить.)

Ответы [ 3 ]

51 голосов
/ 15 июня 2010

Это должно работать для процессов Java и Maven. Вы можете получить командную строку из свойств процесса.

  • запустить процесс в режиме отладки
  • щелкните правой кнопкой мыши элемент процесса в представлении «Отладка» и выберите «Свойства»
  • отображается командная строка
18 голосов
/ 24 апреля 2012

Еще одна хитрость, если вы работаете в ОС Unix (хотя вы должны быть осторожны в этом вопросе ...) - это запустить программу Run .. в Eclipse, а затем переключиться в командную строку и запустить эту команду (Mac синтаксис):

ps -ef | grep java

Это выведет из командной строки вызовы процессов Java, которые в данный момент выполняются. Ищите тот, который соответствует вашему процессу Eclipse (проверьте основной класс, который является последним параметром в командной строке) и вуаля!

4 голосов
/ 03 апреля 2011

спасибо большое всплеск. Одна вещь, которую нужно добавить - я получаю странную ошибку в командной строке:

ОШИБКА: ошибка транспорта 202: подключение Сбой: соединение отказано ОШИБКА: JDWP Транспорт dt_socket не удалось инициализировать, TRANSPORT_INIT (510) JDWP ошибка выхода AGENT_ERROR_TRANSPORT_INIT (197): нет транспорт инициализирован [../../../Src/share/back/debugInit.c:708] ФАТАЛЬНАЯ ОШИБКА в нативном методе: JDWP Нет транспорт инициализирован, jvmtiError = AGENT_ERROR_TRANSPORT_INIT (197) Отменено!

этого можно избежать, просто взяв аргумент agentlib:

-agentlib: JDWP = транспорт = транспорт по сокетам, подвесьте = у, адрес = локальный: 56431

...