не могу развернуть zip на Nexus

Я пытаюсь проверить zip-файл (созданный внешним процессом) в Nexus, используя mvn deploy:deploy-file.

Когда я запускаю из командной строки (Win), все работает, и я вижу pom и zip в своем репозитории моментальных снимков. Однако, если я использую задание maven в Jenkins, чтобы сделать то же самое, я получаю следующую ошибку:

[ОШИБКА] [ОШИБКА] При обработке POM возникли некоторые проблемы: [ОШИБКА] Неизвестная упаковка: zip @ строка 6, столбец 13

пом выглядит так:

<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.test.app</groupId>
<artifactId>testApp</artifactId>
<version>1.0.0.0-SNAPSHOT</version>
<packaging>zip</packaging>
</project>

команда mvn:

mvn deploy:deploy-file -DpomFile=d:\testApp.pom -Dfile=d:\testapp.zip
-DrepositoryId=snapshots 
-Durl=http://localhost:8081/nexus/content/repositories/snapshots

Если я использовал неправильную упаковку, почему она работает для одного, а не для другого?


person dazednconfused    schedule 07.12.2016    source источник
comment
Вы тоже используете ведомую Windows?   -  person Dvir669    schedule 07.12.2016
comment
Делаем упаковку pom и используем build-helper-maven-plugin и прикрепляем zip файл к проекту во время запуска...   -  person khmarbaise    schedule 07.12.2016
comment
Никаких рабов, все работает на одном ящике. посмотрю на другой плагин, но я не понимаю, почему он работает вне Jenkins? Наверняка все, что делает Дженкинс, это называет одни и те же цели и т. д.   -  person dazednconfused    schedule 08.12.2016


Ответы (1)


На этой странице описывается тег ‹packaging>: http://maven.apache.org/pom.html#Maven_Coordinates

Там сказано, и я цитирую:

Текущие основные значения упаковки: pom, jar, maven-plugin, ejb, war, ear, rar, par.

Дополнительные плагины могут добавлять дополнительные типы пакетов при изменении жизненного цикла.

Эта информация относится к тегу в файле pom.

Возможное решение: если вы закомментируете или удалите ‹packaging>zip‹/packaging>, он перестанет выдавать сообщение об ошибке.

Это означает, что вы можете использовать команду с еще одной опцией -D

mvn deploy:deploy-file ... -Dfile=somefile.zip -Dpackaging=zip

чтобы опубликовать файл в репозитории maven, таком как Nexus или Artifactory. Maven не будет жаловаться, потому что он только проверяет тег на действительность.

Однако, если вы делаете что-то еще с Maven и что-то требует от вас установки типа упаковки, вам нужно будет найти другое решение.

person Lee Meador    schedule 26.09.2018