Как узнать, какие разные цели доступны для плагина в Maven?

Я недавно начал использовать Maven. так что этот вопрос может звучать принципиально. Этот вопрос возник, когда я просматривал код с помощью грузового плагина.

В следующем фрагменте плагина maven в pom.xml, который я извлек отсюда, мое понимание таково:

<plugin>
      <groupId>org.codehaus.cargo</groupId>
      <artifactId>cargo-maven2-plugin</artifactId>
      <executions>
        <execution>
          <id>start-container</id>
          <phase>pre-integration-test</phase>
          <goals>
            <goal>start</goal>
          </goals>
        </execution>
        <execution>
          <id>stop-container</id>
          <phase>post-integration-test</phase>
          <goals>
            <goal>stop</goal>
          </goals>
        </execution>
      </executions>
      <configuration>
        [Cargo plugin configuration goes in here]
      </configuration>
    </plugin>
  1. Этот плагин связан с pre-integration-test а также post-integration-test фаза сборки LifeCycle, что также означает, что когда я запускаю mvn install это будет выполнено.

  2. Цели (запуск и остановка) этого плагина выполняются на этих этапах соответственно

  3. Q1:: <id>start-container</id> имеет какое-либо отношение? какова его цель и важность?

  4. Q2:: Как узнать, какие разные цели доступны для плагина. В этом случае для cargo plug-in Я вижу в одном из кодов в моей работе, <goal>redeploy</goal> используется. поэтому мне интересно, как найти информацию об этих конкретных целях и других доступных целей. Я посмотрел онлайн-документацию. Я не нашел ни одного. Возможно, что я не искал в нужном месте.

1 ответ

Решение

A1: id не меняет способ выполнения, это просто способ дать ему имя.

A2: Лучший способ - прочитать документацию. Maven3 также значительно лучше, чем maven2 в этом аспекте. Если вы вызываете плагин с недопустимой целью, он выведет все допустимые цели, но не выведет, какие параметры могут быть переданы плагину (а некоторые плагины используют разные имена параметров для командной строки и pom параметры)

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

Кстати, обе ваши точки 1 и 2 верны.

Другие вопросы по тегам