Плагин Maven Assembly - Включает банки репо - PullRequest
1 голос
/ 24 декабря 2009

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

<moduleSets>
    <moduleSet>
         <includes>
             <include>module1</include>
             <include>module2</include>

Все мои файлы jar собраны в папку lib. Я хочу добавить mysql jar из моего локального репозитория maven в ту же папку lib, которая содержит все остальные мои модули Добавление JAR-файлов локальных репозиториев в moduleset не работает.

[WARNING] The following patterns were never triggered in this artifact inclusion filter:
o  'mysql.mysql-connector-java:mysql-connector-java-version'

Как мне включить банки из репозитория maven.

Ответы [ 3 ]

3 голосов
/ 24 декабря 2009

Я думаю, что вам нужно объявить свой mysql jar в includes подэлементе dependencySet.

Примерно так:

<assembly>
  <id>my-assembly</id>
  ...    
  <dependencySets>
    <dependencySet>
      <outputDirectory>/lib</outputDirectory>
      <includes>
        <include>mysql:mysql-connector-java</include>
      </includes>
      <unpack>false</unpack>
      <scope>runtime</scope>
    </dependencySet>
  </dependencySets>
  ...
</assembly>

См. Документацию Формат дескриптора и / или главу 12.5.4. dependencySets Раздел Книги Maven для более подробной информации об этом элементе.

1 голос
/ 24 декабря 2009

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

  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-assembly-plugin</artifactId>
    <configuration>
      <descriptorRefs>
        <descriptorRef>jar-with-dependencies</descriptorRef>
      </descriptorRefs>
    </configuration>
    <executions>
      <execution>
        <id>make-assembly</id>
        <phase>package</phase>
        <goals>
          <goal>single</goal>
        </goals>
      </execution>
    </executions>
  </plugin>
0 голосов
/ 31 мая 2016

У меня была та же проблема, и я решил ее, изменив область видимости зависимости pom для компиляции.

    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <scope>compile</scope>
    </dependency>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...