Добавление репозитория maven (дистрибутива) в командной строке
Я думаю, что это должно быть возможно, но я не нашел ничего связанного с ним, поскольку все, что я нашел, относится к репозиториям зависимостей.
Что я хотел бы сделать, так это определить репозиторий, где maven (например, развертывание или плагин выпуска) толкает артефакты. Как я могу определить его в командной строке? Я предполагаю, что это -Dsomething
ОБНОВЛЕНИЕ: Когда я читаю результат ошибки jenkins тщательно, он намекает на использование:
-DaltDeploymentRepository=id::layout::url
Каков формат использования этого? Каков параметр компоновки?
Ответы
Ответ 1
Простейшая вещь - прочитать документацию о maven-deploy-plugin, которая описывает формат:
mvn -DaltDeploymentRepository=repositoryId::default::http://WhatEverURL
В дистрибутиве вы обычно даете такие вещи, как:
<distributionManagement>
<repository>
<id>internal.repo</id>
<name>MyCo Internal Repository</name>
<url>Host to Company Repository</url>
</repository>
</distributionManagement>
Если вам нравится использовать другой URL-адрес, в этом случае вам нужно указать:
mvn -DaltDeploymentRepository=internal.repo::default::http://WhatEverURL
Значение по умолчанию в этом случае является значением по умолчанию для макета репозитория maven.
Ответ 2
В вашем pom.xml вы должны добавить конфигурацию distributionManagement для развертывания.
В следующем примере я использовал файловую систему в качестве местоположений.
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
.........
<distributionManagement>
<repository>
<id>internal.repo</id>
<name>Internal repo</name>
<url>file:///home/thara/testesb/in</url>
</repository>
</distributionManagement>
............
</project>
То же самое можно сделать по следующей команде:
mvn deploy -DaltDeploymentRepository=internal.repo::default::file:///home/thara/testesb/in