Ir al contenido principal

Using Maven just for dependency management

For quite some time now I've had the intention to learn how to use Maven and especially how to use it to manage the dependencies for my projects without having to do anything special. I share with you what is necessary to achieve the same thing in your own projects.

First we need to have Maven installed.  You can download Maven from Here so you can execute it from the console or you can install the plugin for eclipse, just search for a plugin called "m2e - Maven Integration for Eclipse" in eclipse and install it.

The next thing to do is to replace the commented code in the "pom.xml" by following the steps below:
  • The grouping.id, can be for example the package name of the project in which you use the pom for example com.domain.project.
  • The artifact-id, might be something like domain-project (for domain-project.jar) or project (for project.jar) without taking into account the version.  So for commons-logging-1.1.1.jar for example the artifact id would be commons-logging.
  • Replace the string "libs" inside <libraries.folder>libs</libraries.folder> with the path in which you want the jars to be stored. For a website project developed using Eclipse it could be for example something like "WebContent/WEB-INF/lib".
  • Locate the piece of xml below and add the dependencies you want to be automatically managed by Maven.  In this Url you can search for the dependencies you wish to add.
<!-- Your dependencies -->
<!--dependency>
<groupId>group id</groupId>
<artifactId>artifact id</artifactId>
<version>the version number!</version>
</dependency-->
  • And finally add the repositories you need, generally you do not need to configure any additional repositories, however, there are times in which the jar that we are looking for is not in a general repository so we might get a problem that says "Could not resolve dependencies for project" and "Could not find artifact", in this case we must find out which is the repository where the jar is located and then add the repositories where the following piece of xml is located.
<!-- Your repositories -->
<!--repository>
<id>Repo ID</id>
<name>Repo Name</name>
<url>http://repourl</url>
</repository-->

The file “pom.xml” is designed so that nothing else is necessary to be added in order to run it, just type “mvn” from within the path where the “pom.xml” is located and then press enter or from within Eclipse right click the pom, “Run As”, “Maven Build” and then clicking the “Run” button will start the execution.  At this point Maven will create a folder, if it doesn't exist already, and it will download all the jars that you added and their respective dependencies.

Here is the complete code:

Well, I hope this post has been helpful.

Comentarios

Entradas populares de este blog

Exposing Reactjs component methods to Javascript or non-reactjs applications

blog-static-generator-new If you want to integrate your javascript or non-reactjs application with a reactjs app and be able to access reactjs components and call their methods to execute actions or get information out of them, in this quick tips episode, you will learn how. Above is the vid and below you will find some useful notes. 1. Pre-reqs Have node.js installed 2. Exposing React JS to Javascript or non-reactjs applications ...

How to copy files from and to a running Docker container

Sometimes you want to copy files to or from a container that doesn’t have a volume previously created, in this quick tips episode, you will learn how. Above is the vid and below you will find some useful notes. 1. Pre-reqs Have Docker installed 2. Start a Docker container For this video I will be using a Jenkins image as an example, so let’s first download it by using docker pull docker pull jenkins/jenkins:lts ...

Brighten Up Your AEM Assets: How to Configure Default Backgrounds and Transparent Modes in Adobe Dynamic Media

Introduction The Importance of a Good Background Defining Your Default Background in AEM Defining Your Default Background in Dynamic Media Classic Transparent Images with fmt=png-alpha Explicit Background Colors with ?bgc Final Thoughts Introduction Welcome to our deep dive into the wonderful world of image backgrounds! In this post, we're going to explore how to configure Dynamic Media Classic in Adobe Experience Manager (AEM) to not only define a default background image but also how to get your images to pop with ...