Utilizar Github como repositorio de Maven

9
11466
Hace poco escribí un post sobre qué es Maven y para que se utiliza. Algo sencillo, sin entrar mucho en detalles, pero a la vez práctico y ajustado a las necesidades del usuario promedio de Panama Hitek. En esta entrada me voy a dedicar a explicar cómo podemos utilizar Github como repositorio de Maven.

Primero lo primero: en Panama Hitek hemos escrito 2 guías, una para principiantes y una avanzada sobre el uso de Git y Github. Estas son:

Ahora lo que haré será dirigirme a aquellos programadores que desarrollan códigos para Java y les gustaría que sus contenidos estén disponibles para el público a través de Maven. Vamos a utilizar un servicio llamado Jitpack.

En un mundo perfecto deberíamos poder subir nuestro repositorio a Maven Central y hacerlo público como cualquier otra dependencia de las que vemos por ahí en Internet. Sin embargo esto es complicado y yo la verdad no he encontrado la forma de hacerlo. Quizás no he investigado más a fondo debido a que la opción que Jitpack me ofrece es mucho menos complicada que cualquier otra que haya visto navegando en la web.

Primero vamos a necesitar tener nuestro proyecto en GitHub. Yo utilizaré de ejemplo la librería PanamaHitek_Arduino que ha sido desarrollada por el equipo de Panama Hitek y ya está disponible en Maven. La dirección de nuestro repositorio es:

http://github.com/PanamaHitek/PanamaHitek_Arduino

Encontraremos lo siguiente:

Github como repositorio de Maven

Vemos que hay una pestaña llamada release. En GitHub tenemos alojado el código fuente de nuestros proyectos públicos y de vez en cuando estamos listos para lanzar una nueva versión de nuestro trabajo. Esto lo hacemos a través de los releases. Nosotros por ejemplo lanzamos la versión 2.7.3 de nuestra librería en la cual agregamos la integración con Maven como una característica más de nuestro proyecto.

Github como repositorio de Maven

 

Si queremos lanzar una nueva versión de nuestro trabajo con algún cambio que hayamos hecho simplemente hacemos un push desde nuestra máquina hacia el repositorio remoto y en la pestaña de releases vamos al botón Draft a new release.

Esto es importante ya que los releases son utilizados por JitPack para hacer su trabajo. Vayamos a la siguiente dirección:

http://jitpack.io/

Colocamos el nombre de nuestro repo en el cuadro de búsqueda de la ventana principal. Hacemos clic en Look Up y nos debe aparecer los releases que tenemos en nuestro repositorio de GitHub.

Github como repositorio de Maven

Le damos clic en Get it y nos aparece un código en la parte inferior.

Github como repositorio de Maven

Ahora vamos a utilizar Github como repositorio de Maven. Vamos a el proyecto en el que queremos agregar nuestro código como una dependencia. Abrimos el archivo POM.xml (clic derecho sobre el proyecto, Open POM) y agregamos el código que nos generó JitPack.

Github como repositorio de Maven

Agregamos la siguiente instrucción justo encima del elemento </project>.

Ahora agregamos la dependencia que nos dio JitPack (debe estar dentro de <dependencies></dependencies>).

 

Github como repositorio de Maven

Ahora podemos ir a la carpeta Dependencies en el árbol de nuestro proyecto y hacer clic en «Download Declared Dependencies».

Github como repositorio de Maven

Se inicia el proceso de descarga. Una vez terminado, tendremos nuestra librería agregada al proyecto.

Github como repositorio de Maven

 

Ahora cada vez que queremos agregar nuestros proyectos desde GitHub solo agregamos el repositorio de JitPack y este se encargará de descargar automáticamente todo lo que declaremos en las dependencias.

El siguiente video resume lo publicado en este post:

Espero que la información suministrada le se útil. Saludos.

 

4.2 5 votes
Article Rating
Suscríbete
Notify of
guest

9 Comments
newest
oldest most voted
Inline Feedbacks
View all comments
Rafael
Rafael
4 years ago

Estoy usando netbeans 11 y me da este error creo que mejor voy a descargar el 8.2

Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.5.0:exec (default-cli) on project ArduinoConexion: Command execution failed. Process exited with an error: 1 (Exit value: 1) -> [Help 1]

To see the full stack trace of the errors, re-run Maven with the -e switch.
Re-run Maven using the -X switch to enable full debug logging.

For more information about the errors and possible solutions, please read the following articles:
[Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

Felipe Tobar
Felipe Tobar
4 years ago
Reply to  Rafael

Pudiste solucionarlo?, tengo el mismo problema

MATIAS SANCHEZ
MATIAS SANCHEZ
3 years ago
Reply to  Felipe Tobar

tengo el mismo problema

Bruno Constante
Bruno Constante
4 years ago

Buenas noches mi problema es que al instalar la libreria tal y como dice el tutorial y la dependencia me aparece con un signo de exclamacion y cuando la quiero usar sale que no tengo agregada la dependencia pero lo raro es que si me aparece en la carpeta Dependencies

javier
javier
5 years ago

buena tarde. mi pregunta es ¿Cuánto espacio ocupa la librería y panamahitek en total en mi pc?

antonio
antonio
6 years ago

Perfecta explicación, voy a probar.