Estoy usando Jenkins para automatizar compilaciones de aplicaciones usando Maven en Linux.
¿Dónde debo establecer variables de entorno como $JAVA_HOME
? y agregar elementos a $PATH
para que estén disponibles para Jenkins?
He probado en varios lugares y no he tenido éxito. No estoy seguro de qué tipo de shell usa Jenkins, si es un inicio de sesión/no inicio de sesión, interactivo o no interactivo.
Respuesta aceptada:
Este es el escenario perfecto para una configuración global de herramientas. En la página de inicio de Jenkins, haga clic en Administrar Jenkins -> Configuración global de la herramienta . Si tiene una instalación predeterminada, esta página le permitirá agregar varias configuraciones para instalar Maven en sus servidores de compilación.
Una vez que haya configurado las herramientas, puede usarlas en sus trabajos agregando los pasos de compilación "Invocar objetivos de Maven de nivel superior". Si está utilizando esclavos/nodos específicos para cada trabajo, puede elegir el Maven que debe instalarse en cada servidor. Luego, cuando se ejecuten los trabajos, Jenkins administrará la instalación automáticamente.
Específicamente para las canalizaciones, existe el complemento de integración Pipeline Maven. No lo he usado, pero según los documentos, parece que debería poder hacer lo que pides:
Proporciona integración de Maven con Pipeline Plugin mediante el uso del paso withMaven
, que configura un entorno maven para usar dentro de un trabajo de canalización
llamando a sh mvn o bat mvn.
Y esta publicación de blog, Canalización declarativa para proyectos de Maven, ofrece un buen ejemplo de configuración de Jenkins para ejecutar una canalización con Maven.