Предоставление конфигурации для существующих плагинов в отображении жизненного цикла Maven - PullRequest
2 голосов
/ 02 июня 2011

Я бы хотел предоставить плагину maven пользовательский <packaging>, обеспечивающий сложный жизненный цикл.В рамках этого жизненного цикла мне нужно запустить maven-compiler-plugin 2 раза в разные фазы с разными конфигурациями.Я хотел бы сделать эту упаковку максимально простой в использовании.Цель состоит в том, чтобы потребителю этого плагина нужно было выбрать новую упаковку и не выполнять конфигурацию выполнения плагина:

<project>
  <modelVersion>4.0.0</modelVersion>
  <groupId>some.other.group</groupId>
  <artifactId>something-useful</artifactId>
  <version>1.0.0</version>
  <packaging>my-maven-plugin-jar</packaging>
  ...
  <build>
    <plugins>
      <plugin>
        <groupId>my.group.id</groupId>
        <artifactId>my-maven-plugin</artifactId>
        <version>0.0.1</version>
        <extensions>true</extensions
      </plugin>
    </plugin>
  </build>
</project>

Тогда мой пользовательский жизненный цикл связывал бы все цели, которые янеобходимо в том числе компилятор оба раза.Проблема в том, что каждый этап компиляции компилирует разные исходные коды (используя <includes> and <excludes> в разные места назначения (используя outputDirectory), и я не могу найти какой-либо способ их настройки, не делая этого в подэлементе <executions> pom с помощью моего плагина.можно было бы сделать это с помощью архетипа, но мне кажется, что было бы немного элегантнее сделать это с нестандартной упаковкой. Любые предложения?

...