Замените плагин сайта Maven на плагин компиляции GWT - PullRequest
2 голосов
/ 07 апреля 2011

Я успешно настроил несколько проектов, использующих Maven для автоматического развертывания сгенерированного Maven сайта в ветке gh-pages их репозитория git. Затем GitHub размещает эти файлы по общедоступному URL-адресу в личном поддомене. Я собираюсь использовать эту функциональность для обслуживания полнофункционального клиентского приложения GWT.

Я изменил свой pom.xml, чтобы скомпилировать приложение GWT в каталог target/site/. Две основные цели, которые я все еще пытаюсь достичь:

  • Как запретить запуск стандартного подключаемого модуля сайта Maven на этапе site?
  • Что требуется для выполнения gwt:compile на этапе site?

1 Ответ

0 голосов
/ 18 сентября 2011

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

<plugin>
  <artifactId>gwt-maven-plugin</artifactId>
  ...
  <executions>
    <execution>
      <id>gwt-site</id>
      <phase>site</phase><!-- phase to bind to -->
      <goals>
        <goal>compile</goal><!-- goal to run in that phase -->
      </goals>
      <configuration>
        <!-- Your magic configuration stuff goes here -->
      </configuration>
    </execution>
    <!-- Possible other executions might be defined here -->
  </executions>
</plugin>

Предотвращение запуска сайта maven по умолчанию более интересно, так как это этап, с которым связано множество целей.Можно запретить запуск стандартной цели site: site на этапе сайта, явно указав выполнение без целей.Это может незначительно отличаться от 2 до 3, так что я собираюсь быть немного общим здесь.Взгляните на ваши журналы сборки, чтобы увидеть, что в настоящее время указано с точки зрения идентификатора выполнения, идентификатора группы / артефакта, чтобы исправить возможные ошибки в моем примере:

<plugin>
  <artifactId>maven-site-plugin</artifactId>
  ...
  <executions>
    <execution>
      <phase>site</phase>
      <goals></goals><!-- This is empty to indicate that no goals should be run in this phase -->
    </execution>
  </executions>
</plugin>
...