Ir al contenido principal

Usando Maven solamente para manejo de dependencias

Desde hace ya algún tiempo tenia la intensión de aprender a usar Maven y en especial quería usarlo para manejar las dependencias de mis proyectos sin tener que hacer nada especial. Les comparto lo necesario para lograr lo mismo en sus proyectos.

Primero necesitamos Maven, este te lo puedes descargar para ejecutarlo por consola desde el sitio oficial de Maven o puedes instalarlo en eclipse, simplemente busca el plugin que se llama "m2e - Maven Integration for Eclipse" en eclipse para instalarlo.

Lo siguiente es reemplazar en el código que se encuentra abajo lo que esta entre comentarios de la siguiente manera:
  • El grouping.id, puede ser por ejemplo el nombre del paquete del proyecto en el cual vas a usar el pom por ejemplo com.domain.project.
  • El artifact-id, podría ser entonces algo como domain-project (para domain-project.jar) o project (para project.jar) sin tomar en cuenta la versión.  para commons-logging-1.1.1.jar por ejemplo el artifact id sería commons-logging
  • Cambia "libs" en <libraries.folder>libs</libraries.folder> por la ruta en donde quieres que queden almacenados los jars.  Para un sitio Web en eclipse podría ser por ejemplo "WebContent/WEB-INF/lib"
  • Agrega las dependencias que quieres que se manejen automáticamente donde esta el siguiente código xml.  En esta Url puedes buscar las dependencias que deseas agregar.
<!-- Your dependencies -->
<!--dependency>
<groupId>group id</groupId>
<artifactId>artifact id</artifactId>
<version>the version number!</version>
</dependency-->
  • Finalmente agrega los repositorios que necesites, en general no es necesario configurar ningún otro repositorio adicional, sin embargo, hay veces que el jar que buscamos no se encuentra en un repositorio general entonces nos saldrá un problema que dice "Could not resolve dependencies for project" y "Could not find artifact", en ese caso debemos buscar cual es el repositorio en donde se encuentra el jar y agregarlo donde esta el siguiente codigo xml.
<!-- Your repositories -->
<!--repository>
<id>Repo ID</id>
<name>Repo Name</name>
<url>http://repourl</url>
</repository-->

El archivo “pom.xml” esta configurado para que no sea necesario adicionar nada para ejecutarlo, simplemente escribe “mvn” desde la ruta en donde se encuentra el “pom.xml” y presiona enter o “Run As”, “Maven Build” y luego click en el boton “Run”.  En este punto Maven creara una carpeta, si es que no existe, y descargara todos los jars que agregaste y sus respectivas dependencias.

Aquí les dejo el código completo:

Bueno, espero haya sido de ayuda el post.

Comentarios

Entradas populares de este blog

Creating a Mongo replicaset using docker: Mongo replicaset + Nodejs + Docker Compose

This is a Docker tutorial for creating a Mongo replica set using docker compose and also a couple more containers to experiment with the replica set, above is the vid and below you will find some of the steps followed.
StepsPre-reqsHave node.js installedAnd docker installed (make sure you have docker-compose as well)Create a container for defining configurations for a mongo instanceCreate a container for setting up the replica setCreate a simple node app using expressjs and mongoose (A modified version from the previous video)Create a docker-compose file with the mongo and setup containers and two additional containers for experimenting with the replica setBuild, Run and experiment with your new containers Create a dockerfile for the first mongo container (not really needed but you could configure more stuff if needed)Include container with mongo preinstalled: FROM mongoCreate default/working directory: WORKDIR /usr/src/configsCopy mongo's configurations file into the container
C…

Creating Docker containers for Adobe Experience Manager

This is a Docker tutorial for creating a docker image for the Galen framework, above is the vid and below you will find some of the steps followed. Adobe experience manager is a content management system which in a nutshell is an application that allows us to create web sites to be consumed by end users. You might be familiar with other such applications like wordpress or drupal which serves the same purpose A typical deployment would be comprised of two AEM instances, the author instance used for creating and modifying content, the publish instance which serves the content and finally we have a dispatcher which is a static web server used for caching, load balancing and some security purposes. We can configure an AEM instance to work as an author or publish instance by either changing the file name for the jar file java -jar cq-author-450…

Creating a Docker container for a NodeJs application: Express + Mongo + Docker Compose

This is a Docker tutorial for creating a NodeJs container using expressjs and mongoose, above is the vid and below you will find the steps followed.
StepsPre-reqsHave node.js installedAnd docker installed (make sure you have docker-compose as well)Create an simple node app using expressjs and mongooseModify your container and create a docker-compose fileBuild and Run your new container Create your simple node appInitialize the node appnpm initInstall the dependencies for our appnpm install --save express mongoose Create the database.jsCreate the index.js Create a dockerfileInclude container with node preinstalled: FROM nodeCreate default/working directory: WORKDIR /usr/src/appCopy package.json to workdir and install dependencies (which we will need in this case😊): COPY package.json .RUN npm install Copy the rest of the app (just the index.js file in this case)COPY . .Expose the port required for reaching our expressjs appEXPOSE 3000Add a command to run when this container is star…