Я использую maven-deploy-plugin
для развертывания в Nexus артефакта, сгенерированного заданием maven-antrun-plugin
в конце моей сборки. Задача Ant просто создает файл. sh собранного архива, созданного Maven.
Мне пришлось включить maven-deploy-plugin
, потому что в противном случае. sh не загружается в Nexus и полностью игнорируется Жизненный цикл сборки.
Это конфигурация плагина, которую я пробовал:
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<version>3.0.0-M1</version>
<configuration>
<skip>false</skip>
</configuration>
<executions>
<execution>
<id>deploy-sh</id>
<phase>deploy</phase>
<goals>
<goal>deploy-file</goal>
</goals>
<configuration>
<skip>false</skip>
<file>${project.build.directory}/${project.artifactId}-${project.version}-autoinstaller.sh</file>
<repositoryId>myrepo</repositoryId>
<groupId>${project.groupId}</groupId>
<artifactId>${project.artifactId}</artifactId>
<version>${project.version}</version>
</configuration>
</execution>
</executions>
</plugin>
Я запускаю сборку Maven с mvn clean deploy
целями, но она завершается с ошибкой:
[INFO] --- maven-deploy-plugin:3.0.0-M1:deploy-file (deploy-sh) @ MyApplication ---
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 04:11 min
[INFO] Finished at: 2020-05-01T19:07:40+02:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:3.0.0-M1:deploy-file (deploy-sh) on project MyApplication: The parameters 'url' for goal org.apache.maven.plugins:maven-deploy-plugin:3.0.0-M1:deploy-file are missing or invalid -> [Help 1]
Параметры 'url' для целевой организации. apache .maven.plugins: maven-deploy-plugin: 3.0.0-M1: файл развертывания отсутствует или недействителен
Да, это происходит потому, что в разделе нет тега <url>
, поэтому это обязательный параметр.
Но почему <distributionManagement>
полностью игнорируется? У меня также есть распределенное управление, настроенное для репозитория myrepo , поэтому URL-адреса настроены там.
Что мне нужно сделать, чтобы он работал в рамках распределения Distribution Management для снимков и релизы