Получить jar-with-зависимости, используя ansible maven_artifact

Можно ли получить Java JAR-с-зависимостями, используя ansible пакет maven_artifact ?

Теперь немного контекста:

  1. У меня есть простое приложение Java. Это означает, что мне нужно создать jar- тип jar-with-dependencies для того, чтобы это приложение могло выполняться как отдельное приложение.
  2. Я толкаю свою банку, используя mvn deploy в реестре (в моем случае: Nexus)
  3. Я использую Ansible для развертывания своего приложения, и это разумный выбор для использования maven_artifact пакет (я полагаю, он управляет идемпотентностью лучше, чем я).

Очень логично, когда я делаю это, я получаю простой jar (без всех зависимостей), а не jar-with-dependenices.

2 ответа

Решение

Вы можете сделать это с помощью следующих шагов:

  • Убедитесь, что ваш jar-with-dependencies загружается в Nexus с определенным classifierнапример, full, Для получения дополнительной информации о classifierПожалуйста, проверьте Maven документацию.
  • Используйте модуль Ansible maven_artifactclassifier атрибут, чтобы указать на ваш 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 классификатор.

Другие вопросы по тегам