Можно ли запускать команды mvn, если на целевой машине не установлен maven? Я знаю, что это странно.
Возможно ли это с помощью некоторого инструмента / утилиты оболочки, в которую встроены инструменты maven / etc в инструмент / утилиту оболочки?
Это то, чего я пытаюсь достичь. Использование Ansible (и Maven) для получения артефакта в заданную папку с удаленного сервера Artifactory.
- Я хочу скачать артефакт из Artifactory.
- На целевой машине не установлен maven (mvn).
Если я создаю небольшой сценарий оболочки с одним вкладышем, тогда мне придется иметь дело со всеми репозиториями один за другим, то есть в некотором порядке (т.е. сначала заглянуть в репозиторий релиза, затем перейти к моментальному снимку и т. Д., Или наоборот).
(wget http://myArtifactoryServer:somePort/artifactory/libs-snapshot-local/com/company/product/artifactName/version/artifactNameVersion.extension || wget http://myArtifactoryServer:somePort/artifactory/libs-stage-local/com/company/product/artifactName/version/artifactNameVersion.extension || wget http://myArtifactoryServer:somePort/artifactory/libs-alpha-local/com/company/product/artifactName/version/artifactNameVersion.extension || wget http://myArtifactoryServer:somePort/artifactory/libs-beta-local/com/company/product/artifactName/version/artifactNameVersion.extension || wget http://myArtifactoryServer:somePort/artifactory/libs-gamma-local/com/company/product/artifactName/version/artifactNameVersion.extension || wget http://myArtifactoryServer:somePort/artifactory/libs-release-local/comcompany/product/artifactName/version/artifactNameVersion.extension)
Мне было интересно, есть ли другой самый простой способ получить артефакт, просто указав «имя виртуального репо», то есть libs-release (который я создал и просматривает все репозитории физических выпусков или просто использует виртуальные репозитории компании, чтобы я не Я должен называть каждое имя репо одно за другим с помощью || или с помощью wget).
Мне тоже не нужно использовать wget, если есть другой способ. Maven автоматически находит артефакт и выполняет поиск во всех репозиториях (что вы определяете в settings.xml или pom.xml или в командной строке maven-dependency-plugin: get / copy)
Я также могу писать код на groovy, но тогда на целевом сервере должен быть Groovy.