Как использовать миксены Maven 3? - PullRequest
15 голосов
/ 16 марта 2010

Я пытался выяснить, как миксины определены в Maven 3, но не смог найти ничего, кроме buzz. Он распространяется как одна из больших новых функций здесь и здесь . В настоящее время я чувствую боль иерархической структуры и хотел бы дать ей вращение. У кого-нибудь есть указатель на документацию или источник, определяющий даже синтаксис?

Ответы [ 4 ]

14 голосов
/ 16 марта 2010

В комментарии к этому ответу Брет Портер написал:

Maven 3.0 пока не предлагает миксины. - Брет Портер 16 февраля в 8: 18

И AFAIK, миксинов до сих пор нет.

3 голосов
/ 25 января 2013

Джесси Глик указал на проблему Maven 5102 , поэтому я просто хотел упомянуть, что в последнем комментарии (2 октября 2012 г.) содержится ссылка на новый плагин maven, который предлагает поведение mixin: maven- плитка . Похоже, что это лучший вариант, пока поддержка миксинов фактически не запечена в Maven (что уже несколько лет откладывается).

Изменить 2015-янв. : tknerr указал, что эта проблема помечена для проверки на наличие Maven 4. Разработчики Maven, похоже, считают, что изменения формата POM необходимы для правильной поддержки этой функции. (Как давний пользователь Maven, я не удивлен этим.)

2 голосов
/ 12 октября 2014

Вы можете использовать плагины с открытым исходным кодом, чтобы добавить миксин в ваш пом.

Есть несколько плагинов, которые решают сложность иерархии в форме mixin. Один из них предназначен для решения иерархии в разделе управления плагинами / плагинами.

Он считывает все импортированные файлы POM и объединяет их в файл POM таким же образом, как Maven вычисляет эффективную pom. Плагин объединяет только разделы сборки, свойств и профилей и не объединяет любые другие элементы pom, такие как зависимости, репозитории и т. Д. *

В следующем фрагменте артефакт sample-mixin будет использовать конфигурацию управления подключаемыми модулями, как это определено в файле sample-mixin pom. Для этого не нужно наследовать родительский / базовый пом.

<plugin>
  <groupId>com.github.odavid.maven.plugins</groupId>
  <artifactId>mixin-maven-plugin</artifactId>
  <version>0.1-alpha-23</version>
  <extensions>true</extensions>
  <configuration>
    <mixins>
      <mixin>
        <groupId>mixin-example</groupId>
        <artifactId>sample-mixin</artifactId>
        <version>${project.version}</version>
      </mixin>
    </mixins>
  </configuration>
</plugin>

Для дальнейшего чтения, проверьте это: http://rethinkingswd.blogspot.co.il/2014/09/mixin-maven-plugin-reusable-project.html

1 голос
/ 27 мая 2013

Mixins в настоящее время запланированы для Maven 3.2 как bug MNG-5102 . Они являются одними из многих высоко оцененных ошибок, которые не были рассмотрены в кандидате Maven 3.1.

Так много для "Проложить линии желаний".

...