Как просмотреть команды оболочки, используемые eclipse "run configurations"
Учитывая "запуск конфигурации" в Eclipse, я хочу распечатать связанную команду оболочки, которая будет использоваться для ее запуска.
Например:
Прямо сейчас, в Eclipse, если я нажму "play", он запустится:
mvn assembly:directory -Dmaven.test.skip=true
Я не вижу эту команду, я просто знаю, что в какой-то момент должна запускаться IDE.
Однако некоторые из других конфигураций запуска намного сложнее с длинными вариантами classpath и виртуальной машины, и, откровенно говоря, иногда я понятия не имею, что такое эквивалентная команда оболочки (особенно, когда речь заходит о Flex).
Должен быть какой-то способ получить доступ к команде оболочки, которая будет связана с "Запустить конфигурацию" в Eclipse/Flex Builder. Эта информация должна быть доступна, что заставляет меня поверить, что кто-то написал плагин для его отображения. Или, возможно, уже есть опция, встроенная в Eclipse для доступа к этому.
Итак, есть способ, по существу, преобразовать конфигурацию запуска Eclipse в команду оболочки?
(только для контекста: я спрашиваю, потому что я пишу bash script, который автоматизирует все, что я делаю, во время разработки - от заполнения базы данных до открытия Firefox и очистки кеш перед запуском веб-приложения, поэтому каждая команда, которую я запускаю из среды IDE, должна существовать в script. Некоторые из них сложно понять.)
Ответы
Ответ 1
Это должно работать для процессов Java и Maven. Вы можете получить командную строку из свойств процесса.
- запустить процесс в режиме отладки
- щелкните правой кнопкой мыши элемент процесса в представлении "Отладка" и выберите "Свойства"
- отображается командная строка
Ответ 2
Еще один трюк, если вы работаете в ОС Unix (хотя вы должны быть в курсе этого...) заключается в том, чтобы инициировать запуск в Eclipse, а затем переключиться на командную строку и запустить эту команду (Mac синтаксис):
ps -ef | grep java
Это приведет к печати запущенных в данный момент запущенных процессов процесса Java. Найдите тот, который соответствует вашему процессу Eclipse (проверьте основной класс, который является последним параметром в командной строке) и voila!
Ответ 3
Большое спасибо. одна вещь, чтобы добавить - я получал странную ошибку в командной строке:
ОШИБКА: транспортная ошибка 202: connect не удалось: соединение отклонено ОШИБКА: JDWP Транспорт dt_socket не удалось initialize, TRANSPORT_INIT (510) JDWP ошибка выхода AGENT_ERROR_TRANSPORT_INIT (197): Нет инициализируется транспорт [../../../src/share/back/debugInit.c:708] FATAL ERROR в собственном методе: JDWP Нет переносит инициализацию, jvmtiError = AGENT_ERROR_TRANSPORT_INIT (197) Отменено!
этого можно избежать, просто вынув аргумент agentlib:
-agentlib: JDWP = транспорт = транспорт по сокетам, приостановить = у, адрес = локальный: 56431