Есть ли способ отключить цель развертывания maven-deploy-plugin через settings.xml

Я попытался добавить это в settings.xml;

<properties>
    <maven.deploy.skip>true</maven.deploy.skip>
</properties>

Но это не сработало. mvn deploy -Dmaven.skip.deploy=true работает нормально. Также я предполагаю, что добавление вышеуказанного тега в pom.xml также будет работать. Есть ли способ добиться этого с помощью settings.xml?

Причина, по которой я хочу сделать это, состоит в том, чтобы заставить людей, создающих задания Jenkins, использовать метод Jenkins для развертывания артефактов, а не использовать цель развертывания. Метод Дженкинса будет развертывать артефакты только после успешного завершения всей сборки, но цель развертывания может развертывать артефакты даже тогда, когда остальная часть сборки находится на грани сбоя. Я открыт для предложений о других способах достижения этого, помимо запрета обычным пользователям создавать и настраивать задания в Jenkins.


person pkauko    schedule 21.09.2012    source источник


Ответы (4)


Один обходной путь, который должен работать, если -Dmaven.skip.deploy=true действительно работает для вас:

В конфигурации задания Jenkins перейдите в раздел «Сборка», нажмите «Дополнительно»… и введите -Dmaven.skip.deploy=true в поле MAVEN_OPTS.

person David Bejar    schedule 21.09.2012
comment
Спасибо за предложение. Искал центральный способ сделать это и способ, который пользователи не могут обойти. Выяснил, как получить настройку через settings.xml. - person pkauko; 21.09.2012

Разобрался как это сделать с помощью settings.xml. Пришлось вставлять теги, которые я упомянул, в активный профиль.

person pkauko    schedule 21.09.2012

Следующее сработало для меня после долгой битвы.

 -Dskip.deploy=true

Следующее не сработало.

-Dmaven.skip.deploy=true
-Dmaven.deploy.skip=true
person Nhlanhla Rihlapfu    schedule 26.08.2019

Я обнаружил, что он работает с

-Dmaven.deploy.skip=true

вместо

-Dmaven.skip.deploy=true

person Huseyin Aydogdu    schedule 15.02.2019