Использование maven-deploy-plugin для развертывания продукта Eclipse
Я пытаюсь развернуть продукт Eclipse в хранилище Nexus. Я несколько успешен, но все еще получаю некоторые ошибки, с которыми я не уверен, как справиться.
Я использую maven-deploy-plugin в функции (F), которая создает продукт:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.6</version>
<executions>
<execution>
<phase>deploy</phase>
<goals>
<goal>deploy-file</goal>
</goals>
<configuration>
<repositoryId>snapshots</repositoryId>
<packaging>zip</packaging>
<generatePom>true</generatePom>
<url>http://repo:8081/nexus/content/repositories/snapshots</url>
<groupId>my.group</groupId>
<artifactId>my.artifact</artifactId>
<version>1.0.0-SNAPSHOT</version>
<file>
target/products/product.zip
</file>
</configuration>
</execution>
</executions>
</plugin>
Я выполняю 'mvn clean install', чтобы собрать продукт, а затем 'mvn deploy' на F. Если я это сделаю, то получу ошибку
Exception while publishing product /home/akravets/dev/workspaces/trunk/my.repository.feature/myProduct.product: publishing result: [Included element my.product.feature.feature.group 8.0.1.R20180301-1431 is missing. Cannot determine filter for requirement to this element.] -> [Help 1]
Я читал дискуссии по этой проблеме, но мне кажется, что ничего не имеет отношения к моей проблеме, потому что у меня нет определенных фаз развертывания, кроме как в maven-deploy-plugin.
Если я изменю фазу maven-deploy-plugin на 'install', я получу почти удовлетворительные результаты. ZIP-файл и сгенерированный pom развернуты в хранилище, но сборка завершается с ошибкой
product.qualifier-p2artifacts.xml. Return code is: 400, ReasonPhrase: Bad Request.
Почему этот файл даже считается развернутым в репозитории, если он не находится в элементе файла maven-deploy-plugin и не находится в структуре каталогов, где находится zip-файл: target/ vs target/product/product.zip? Это потому, что maven-deploy-plugin выполняется во время фазы установки, и он выбирает все сгенерированные ресурсы в качестве кандидатов для развертывания?
1 ответ
Я просто рекомендую вам использовать Maven-Tycho для развертывания продукта Eclipse RCP.Tycho определяет зависимости плагина через файл MANIFEST.MF плагина и выбирает необходимые плагины-связки через онлайн-репозитории.
Вы можете проверить этот репозиторий git в качестве примера; рчп - тычо