Получить jar-with-зависимости, используя ansible maven_artifact
Можно ли получить Java JAR-с-зависимостями, используя ansible
пакет maven_artifact
?
Теперь немного контекста:
- У меня есть простое приложение Java. Это означает, что мне нужно создать jar- тип jar-with-dependencies для того, чтобы это приложение могло выполняться как отдельное приложение.
- Я толкаю свою банку, используя
mvn deploy
в реестре (в моем случае: Nexus) - Я использую Ansible для развертывания своего приложения, и это разумный выбор для использования
maven_artifact
пакет (я полагаю, он управляет идемпотентностью лучше, чем я).
Очень логично, когда я делаю это, я получаю простой jar (без всех зависимостей), а не jar-with-dependenices.
2 ответа
Решение
Вы можете сделать это с помощью следующих шагов:
- Убедитесь, что ваш
jar-with-dependencies
загружается в Nexus с определеннымclassifier
например,full
, Для получения дополнительной информации оclassifier
Пожалуйста, проверьте Maven документацию. - Используйте модуль Ansible maven_artifact
classifier
атрибут, чтобы указать на вашfull
артефакт.
Вот мой вамп из ответа:
Файловая организация должна быть:
roles/fetch-my-awesome-jar/tasks/main.yml
И содержание:
---
- name: fetch my awesome jar
maven_artifact:
group_id: my.awesome.group.id
artifact_id: my-awesom-artifact-id
version: my.awesome.version.number
classifier: jar-with-dependencies
extension: jar
repository_url: http://my-local-nexus:<port>/repository/my-awesome-repo/
username: my-username
password: my-password
dest: my-awesome-target-directory
Версия maven_artifact
Я пользуюсь удалила jar-with-dependencies
классификатор.