Включая сборки maven в другом модуле - PullRequest
0 голосов
/ 21 июня 2011

у меня 2 maven модуля. Один модуль создает кучу zip-файлов, используя maven-assembly-plugin. Второй модуль должен включать некоторые zip-файлы, созданные первым модулем, в свой пакет. Какой способ сделать это. Спасибо.

Ответы [ 2 ]

1 голос
/ 22 июня 2011

Проще всего было бы развернуть zip-файлы в хранилище.Для локального репозитория используйте install: install-file, а для центральных репозиториев используйте deploy: deploy-file.

Вы можете объявить zip как зависимости во втором модуле.

0 голосов
/ 24 июня 2011

Так что кто-то еще упомянул, чтобы развернуть его в вашем хранилище.Если вы уже настроили развертывание встроенных артефактов в хранилище, это легко, в противном случае проверьте http://maven.apache.org/plugins/maven-deploy-plugin/

Далее, вам нужно использовать плагин для извлечения zip-файла из хранилища.Вы можете использовать тень или maven-dependency-plugin.Давайте предположим, что maven-dependency-plugin http://maven.apache.org/plugins/maven-dependency-plugin/usage.html

Итак, добавьте это в ваш файл maven pom в разделе плагинов:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-dependency-plugin</artifactId>
    <executions>
        <execution>
            <id>unpack</id>
            <phase>process-sources</phase>
            <goals>
                <goal>unpack</goal>
            </goals>
            <configuration>
                <artifactItems>
                    <artifactItem>
                        <groupId>my.artifact.group.id</groupId>
                        <artifactId>my-artifact</artifactId>
                        <version>My-version</version>
                        <type>zip</type>
                        <overWrite>false</overWrite>
                        <outputDirectory>${project.build.directory}/see</outputDirectory>
                    </artifactItem>
                </artifactItems>
            </configuration>
        </execution>
    </executions>
</plugin>

Очевидно, вам нужно изменить специфику артефакта.Это разархивирует ваш zip-файл в target / see.Если вам нужен фактический zip-файл (который выглядит как то, что вы просили, но не ясно), просто измените цель с «распаковать» на «копировать-зависимости».Возможно, вам также придется удалить outputDirectory или изменить какой-либо другой бит конфигурации.Просто поиграйте с ним, чтобы получить его там, где вам это нужно, и посмотрите страницу упомянутого выше подключаемого модуля maven-dependency-plugin.

Надеюсь, это поможет.

...