Более простой способ запустить приложение Java из Maven? - PullRequest
5 голосов
/ 25 января 2011

Если я правильно понял, мне нужно набрать это, чтобы запустить мой проект из maven:

mvn compile
mvn exec:java -Dexec.mainClass="com.foo.bar.blah.Main"

Есть ли способ, которым я могу сделать это проще?Оптимально я хотел бы просто сделать

mvn run

Ответы [ 4 ]

6 голосов
/ 08 февраля 2011

1) Создайте новый профиль с именем «run» (или другое имя по вашему выбору)

  <profiles>
    <profile>
      <id>run</id>

2) Установите цель профиля по умолчанию «проверить» (или вы можете выбрать «установить», выбор фазы после компиляции обеспечит автоматическую компиляцию кода перед запуском класса)

 <profiles>
    <profile>
      <id>run</id>
      <build>
        <defaultGoal>verify</defaultGoal>

3) Добавьте exec-maven-plugin в этот профиль (см. this ), но сконфигурируйте его для запуска на этапе проверки.

   <execution>  
    <phase>test</phase>  

4) Теперь вы можете запустить свой класс, используя следующее:

mvn -Prun
5 голосов
/ 25 января 2011

Немного больше настроек, чуть меньше параметров командной строки; -)

используя тот же exec: java plugin , вы можете настроить свою задачу в pom.xml, а затем выполнить ее более простым способом, сопоставив свою цель с шагом запуска жизненного цикла, например этот пример показывает.

1 голос
/ 25 января 2011

Как показывает приведенный выше пример, вы можете заключить этот плагин в отдельный профиль.Взгляните на 3-е решение

0 голосов
/ 25 января 2011

К сожалению, нет `(насколько я знаю).Если у вас есть веб-приложение, вы можете использовать плагин Jetty для его запуска:

mvn jetty:run

, но для автономных приложений вам нужен плагин exec.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...