Gradle publishToMavenLocal Publicar en MavenLocal con Gradle
Cuando uso gradle clean build publishToMavenLocal con
publishing {
publications {
maven(MavenPublication) {
from components.java
}
}
}
utilizando gradle 7.1.
Funciona en la compilación local degradle. Sin embargo, cuando lo ejecuto en Jenkins, obtengo:
org.jenkinsci.plugins.workflow.steps.MissingContextVariableException: La clase de contexto requerida hudson.FilePath falta
Quizás olvidaste rodear el código con un paso que proporcione esto, como: node
Cuando comento la sección de publicación en build.gradle, funciona en Jenkins.
¿Alguna idea?
Gracias.
davy.ai
Parece que el problema está relacionado con el contexto de construcción, específicamente con la clase de contexto
FilePath
que falta. Esta clase está relacionada con operaciones de archivos, las cuales podrían no estar disponibles en Jenkins de forma predeterminada. Para solucionar esto, puedes intentar ejecutar la construcción en un nodo de trabajo de Jenkins, el cual tiene acceso al contexto requerido. Puedes hacer esto agregando el pasonode
a la definición de tu canalización, por ejemplo:Esto ejecutará la construcción en un nodo de trabajo de Jenkins, donde el contexto de
FilePath
debería estar disponible.Como alternativa, puedes intentar proporcionar el contexto faltante de forma manual, agregando un bloque
withContext
a la definición de tu canalización. Por ejemplo:Esto proporcionará el contexto requerido de
FilePath
a la construcción y permitirá que se ejecute correctamente en Jenkins.¡Espero que esto ayude! Hazme saber si tienes alguna otra pregunta.