Если ваша потребность развернуть некий артефакт (возможно, JSON текстовый файл), который имеет не соответствующий файл pom.xml поддерживая его, вы можете использовать цель развертывания-файла:
http://maven.apache.org/plugins/maven-deploy-plugin/deploy-file-mojo.html
Это позволяет развернуть любой артефакт из любого источника в репозиторий maven, указав по командной строке координаты группы, артефакта и версии и все, что вам нужно.
Для того, чтобы развернуть его в нужном месте, в зависимости от версии, я могу предложить вам этот фрагмент муравей сценария мы построили для аналогичной цели:
<condition property="url" value="${snapshots.repo.url}" else="${releases.repo.url}">
<contains string="${project.version}" substring="-SNAPSHOT"/>
</condition>
<exec executable="cmd">
<arg value="/c"/>
<arg value="mvn.bat"/>
<arg value="deploy:deploy-file"/>
<arg value="-DgroupId=com.myorg.swagger"/>
<arg value="-DartifactId=swagger_file"/>
<arg value="-Dversion=${project.version}"/>
<arg value="-U"/>
<arg value="-Dfile=./mydir/my_swagger_file.json"/>
<arg value="-Durl=${url}"/>
<arg value="-DrepositoryId=my_repo_id"/>
</exec>
Это будет работать только в Windows, но легко адаптируется для любой другой ОС. Интересный бит здесь является repositoryId, что должно указывать на существующий аутентификации в вашем settings.xml:
...
<servers>
<server>
<id>my_repo_id</id>
<username>your_user_for_deployment</username>
<password>your_pwd_for_deployment</password>
</server>
</servers>
...
Надежда это поможет вам ^^
Пожалуйста, не могли бы вы объяснить, каким образом делает ваши потребности расходятся от стандартного поведения Maven? Потому что мое первое впечатление заключается в том, что стандартное поведение соответствует вашим потребностям. –
Я сделал обновление по причине ручного развертывания. –
Репозиторий выпуска или моментального снимка будет определяться версией, которую вы используете. Это означает, что если вы используете что-то вроде 'XXXX-SNAPSHOT', оно будет развернуто в хранилище снимков, и если вы используете что-то без' -SNAPSHOT', оно будет развернуто для выпуска репозитория ... Поэтому я не понимаю, почему вам нужно делать что-то другое? Ручное развертывание можно выполнить с помощью 'mvn deploy'? – khmarbaise