Skip to main content

Maven - The Comprehensive Project Management Tool

Introduction to Maven

Maven is basically a simple build automation tool used in Java projects. Maven is also defined as a comprehensive project management tool. It is intended to provide developers with a complete and detailed build lifecycle framework of the application.

Maven also makes it easy for developers to check build status, generate reports (basically Javadoc), set up an automatic build process and monitor it.

Maven makes it easy to compile, distribute, document, collaborate with different teams, and other important tasks on the source code.
Maven aims to describe 2 important things :
  1. How software is built.
  2. The dependencies, plug-ins & profiles that the project is associated in a standalone or a distributed environment.
The maven can also be used in building & managing the projects written using C#, ruby and other programming languages as well.

Maven History

Maven was originally designed and developed by a turbine project in Jakarta. At a later point, the Apache group developed Maven to the extent that it supports developing, building and publishing multiple projects, publishing those projects, deploying them and generating reports.
The JARs/WARs of any Maven project can be shared across any distributed environments.

Advantages of Using Maven over Ant

  • Managing dependencies.
  • Convention over configuration - configuration is very minimal
  • Multiple/Repeated builds can be achieved.
  • Focus on automation.
  • Plugin management.
  • Testing - ability to run JUnit and other integration test suites.
  • Making the development process transparent.
  • Provision to check the status of each build.
  • Avoiding inconsistent setups.
  • Standard and uniformed infrastructure among projects.

Comments

Popular posts from this blog

What? React?

Facebook's React has changed the way we think about Web application and user interface development. For that design, you can use it beyond the web. What makes this possible is a feature called Virtual DOM. This chapter explains some of the basic ideas behind the library. Therefore, please understand React a little more well before proceeding. Introduction to React React is a JavaScript library that aims to simplify the development of visual interfaces. Developed on Facebook and releas ed to the world in 2013, it drives some of the world's most widely used codes, running Facebook and Instagram among many other software companies. Its main purpose is to facilitate inferring about the interface and its state at any time by breaking up the UI into a collection of components. React is used to build single page web applications, along with many other libraries and frameworks that were available before React. Why is React so popular? React swept the front-end web dev...

MongoDB - NoSQL database program

MongoDB is a document database designed to facilitate development and scaling. This manual introduces the key concepts of MongoDB, presents a query language, provides operational and administrative considerations and procedures, and provides a comprehensive reference section. MongoDB offers both a  Community  and an  Enterprise  version of the database: MongoDB Community is a source and free edition of MongoDB available. MongoDB Enterprise is available as part of the MongoDB Enterprise Advanced subscription and includes comprehensive support for MongoDB deployment. MongoDB Enterprise also adds enterprise features such as LDAP and Kerberos support, on-disk encryption, and auditing. Document Database MongoDB records are documents. This is a data structure that consists of field-value pairs. MongoDB documents are similar to JSON objects. Field values can include other documents, arrays, and arrays of documents. The advantages of using documents are: D...

NodeJs - The server side JavaScript engine

In this article, I'm going to give an introduction to NodeJs. Node.js is a server-side platform built on V8 Engine. It was developed by Ryan Dahl in 2009. Node.js is an open source, a cross-platform runtime environment for developing server-side and networking applications. Node.js applications are written in JavaScript and can be run within the Node.js runtime on OS X, Microsoft Windows, and Linux. Features of Node.js Following are some of the important features that make Node.js the first priority of software architects. Asynchronous and Event Driven  − All APIs in the Node.js library are asynchronous, ie non-blocking. This essentially means that Node.js based servers never wait for the API to return data. The server moves to the next API after calling it, and the Events of Node.js notification mechanism helps the server get a response from the previous API call. Very Fast  − The Node.js library is built on Google Chrome's V8 JavaScript engine, so code execu...