Создание архива всех jar и исходных jar для многомодульного проекта - PullRequest
6 голосов
/ 11 сентября 2009

Я строю проект Maven, в котором есть полдюжины модулей.

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

Я хотел бы создать сборку zip / tar для всех модулей и их источников, которую они могут использовать, как им нравится.

Я прочитал Плагин Maven Assembly: включая двоичные файлы модулей , но я стесняюсь его использовать, потому что:

  1. Связанная запись FAQ возвращает 404;
  2. Мне нужно вручную указать все модули.

Есть ли альтернатива?


Обновление : я пытался использовать встроенные дескрипторы сборки

 mvn assembly:assembly -DprojectModulesOnly=true
 mvn assembly:assembly

и оба с ошибкой

[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Failed to create assembly: Error creating assembly archive bin: You must set at least one file.

сразу после запуска всех сборок модуля.

Ответы [ 4 ]

4 голосов
/ 11 сентября 2009

Я думаю, что вы находитесь на правильных линиях, параметры moduleSets плагина сборки обрабатывают то, что вам нужно.

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

1 голос
/ 31 июля 2012

У меня была эта проблема, для меня решение НЕ было поставлено / в начале вашего <fileset><directory>

Если вы это сделаете, это будет работать в Windows, а не в Unix / Linux!

<fileSet>
  <directory>src/main/</directory>
  <outputDirectory></outputDirectory>
  <includes>
    <include>VERSION</include>
  </includes>
</fileSet>

работает, тогда как

<fileSet>
  <directory>/src/main/</directory>
  <outputDirectory></outputDirectory>
  <includes>
    <include>VERSION</include>
  </includes>
</fileSet>

1011 * приводит *

[ОШИБКА] Не удалось выполнить цель org.apache.maven.plugins: maven-assembly-plugin: 2.3: single (execute-pluggin-assembly) в проекте test3: Не удалось создать сборку: Ошибка создания сборки архива сборки: Вы должен установить хотя бы один файл. -> [Помощь 1]

0 голосов
/ 11 сентября 2009

Похоже, вам нужен какой-то сборочный сервер. Я был на JavaZone 2009 на этой неделе и посмотрел на Hudson CI http://hudson -ci.org /

Сервер создаст артефакты, которые вы или другие команды можете использовать / скачать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...