Не удается получить maven-assembly-plugin для тестирования пакетов - PullRequest
0 голосов
/ 29 февраля 2020

Я хотел бы создать толстый / автономный jar-файл, который бы содержал как мои тестовые классы, так и зависимости для тестовой области. Используя maven-jar-plugin, я могу создать jar, который содержит мои тестовые классы, но не содержит зависимостей. Чтение inte rnet, кажется, решение состоит в том, чтобы объединить maven-jar-plugin с maven-assembly-plugin.

Я пытался следовать этим инструкциям https://jitblog.net/build-maven-standalone-tests/, но безуспешно , Вот репродукция моей проблемы: https://github.com/yanakad/commons-compress-test

  1. Запуск mvn clean package
  2. Ожидается: target / fatJar.jar будет содержать как SnakeYaml, так и TestClass
  3. Замечено: SnakeYaml действительно существует, но TestClass не

Моя версия maven Apache Maven 3.6.0

Глядя на выполнение maven, кажется, что

`[INFO] --- maven-assembly-plugin:3.2.0:single (fat-testjar) @ compress-test ---` 
is run before
`[INFO] --- maven-jar-plugin:3.2.0:test-jar (default) @ compress-test ---`

Не уверен, является ли это причиной или красной сельдью, или как ее исправить ... Любое понимание высоко ценится

1 Ответ

0 голосов
/ 02 марта 2020

Так что это оказалось глупой ошибкой, но мы оставим это здесь, если это поможет кому-то еще

maven-jar-plugin и maven-assembly-plugin работать в одной фазе сборки. Maven, по-видимому, выполняет плагины в лексическом порядке файла. Таким образом, факт, что сборочный плагин работал до jar-плагина, был на самом деле проблемой. Решением было изменить порядок плагинов в файлах pom. xml, чтобы maven-jar-plugin отображалось до maven-assembly-plugin

...