Как уже указывалось в других ответах, если вы используете тип проекта Maven, у вас есть доступ к переменной $ POM_VERSION . Но если нет, вы можете использовать эту последовательность шагов (некрасиво, но надежно). В этом случае для определения версии pom используется одна и та же версия maven (при обработке сложного наследования родительского / дочернего pom, где может даже не присутствовать для дочернего элемента).
Maven шаг с этой целью:
org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version -l version.log
Шаг оболочки : (Возможно, вам придется изменить путь к version.log в зависимости от вашей иерархии)
echo "POM_VERSION=$(grep -v '\[' version.log)" > props.properties
Шаг ввода переменных среды (Плагин инжектора среды):
Путь к файлу свойств: props.properties
Теперь вы можете использовать $ POM_VERSION , как если бы это был проект Maven.
Что это делает: использует maven для распечатки версии вместе с беспорядком вывода, затем вычищает беспорядок вывода, оставляя только версию, записывает его в файл, используя формат файла свойств, и затем внедряет его в среду сборки , Причина, по которой это лучше, чем однострочная, как mvn ..... | grep -v '\['
, заключается в том, что использование шага Maven не делает предположений об установленных версиях maven и будет обрабатываться той же автоматической установкой, что и любые другие шаги maven.