У меня есть мультимодульный проект maven, и один из модулей предназначен для распространения.
Project \
| moduleA \
| moduleB \
| ...
| dist-module \
Распространение содержит исполняемый банку, который я хотел бы легко выполнить. Однако, чтобы выполнить его, я должен ввести что-то вроде:
java -jar dist-module/target/dist-module-1.0-SNAPSHOT-full-dist/myJar.jar
Было бы очень желательно просто напечатать:
mvn exec:java \ OR
mvn exec:exec
К сожалению, я не могу найти способ получить java-цель для выполнения .jar. Цель exec на самом деле это сделает, но есть улов: в банке есть встроенный сервер причалов, и из-за того, как работает exec (не использует тот же JVM как maven), сервер не завершается, если я не убью процесс вручную, что тоже надоедает.
Любые рекомендации о том, как это сделать, используя maven?
Edit:
Для пояснения эта команда будет в первую очередь использоваться для простого ручного тестирования дыма; чтобы прочитать выход журнала и обеспечить правильную работу программы в своей среде распространения. Таким образом, вероятно, это должен быть блокирующий вызов ctrl-c, завершающий как сервер, так и maven.
Встроенный сервер специализирован для запуска нескольких конкретных приложений и не перезагружает их автоматически. Таким образом, нет большой необходимости поддерживать работу сервера независимо от maven в течение длительных периодов времени.