2016-06-30 7 views
3

Я пытаюсь развернуть файлы подписи отдельно с помощью deploy-file цели в промежуточном репозитории Nexus, но я заметил, что плагин mvn deploy удаляет расширение. Мой файл что-то вроде: azerty-0.1.jar.ascMaven deploy: deploy-file удаляет расширение из файла

но файл, который развертывается является: azerty-0.1.asc

Я попытался добавить классификатор: -Dclassifier=jar

файл, который развертывается является: azerty-0.1-jar.asc

Это похоже странное поведение.

Вопрос: Есть идеи, как обойти это?

ответ

3

Это скорее нормальное поведение, Maven использует расширение файла в качестве артефакта packaging, из maven-deploy-plugin, deploy-file, packaging вариант:

Тип артефакт будет развернут. Получено из элемента <packaging> файла POM, если указан файл POM. По умолчанию расширение файла, если оно не указано в командной строке или POM.

Примечание: жирным является мой.

Кроме того, опция classifier действительно добавит - между версией и строкой, предоставленной в качестве классификатора: это maven convention.

В вашем случае вы хотите указать специальный packaging, который будет jar.asc, если вы действительно хотите, чтобы удаленный файл имел расширение jar.asc.

Ниже будет работать, следовательно:

mvn deploy:deploy-file -Dfile=azerty-0.1.jar.asc -Dpackaging=jar.asc -DrepositoryId=your_id -Durl=http://your_repository -DgroupId=your_groupId -DartifactId=azerty -Dversion=0.1 

Обратите внимание на -Dpackaging=jar.asc, который эффективно говорит Maven расширение файла будет jar.asc.


В общей ноте, если вы используете хранилище в качестве сборки магазина, что будет по-прежнему быть разумным, иначе в вашем случае будет настаивать на Maven хранилище артефакта, который затем будет трудно (или, скорее, странно) для импорта в проект.

Если вместо того, чтобы это действительно дополнительный артефакт вашего проекта, вы должны смотреть на attach-artifact цели build-helper-maven-plugin, чтобы определить его эффективным в качестве дополнительного артефакта, то Maven автоматически добавит его в install и deploy фазы.

+0

Это работает. большое спасибо –