The word maven is a Yiddish word meaning accumulator of knowledge was built. And it was built as an attempt to simplify the build process. 

 

Building a Java or compiling a Java application is a tedious task as long as if you are not using any build tool like Meven OR Gradle 

 

Meven Helps:- 

  • You with building your project, 
  • You maintain the dependency of your project. 
  • You create documentation for your project.
  •  help you with feature migration.
  • Helps in SCMs, Release and Distribution 

 

Meven 

  • help you simplify the overall build process.
  • Maven can also help you with uniform build process (shared by all Maven Projects)
  • Provide Project Information  such as log document, cross-reference sources, mailing list, dependency list, unit test reports, etc. that makes me even very unique.

 

 

Maven Phases

 

  • Maven can help you validate your overall project, before we start with
  • Maven can help you with compiling your project. So when you work with Maven, a command line tool Mvn which help you through which you will be managing Maven phases. Mvn is installed with Maven when we set it up. So, when I say Maven validate, So, in short, Maven validate is a command that will let you check your project.Maven compile will help you compile your source code.
  • Maven test will help you run the JUnit test cases.
  • Maven package will create an artifact. Depending upon your Pom file, whether you're creating a Jar file or war file, you will have an artifact created.
  • Maven can also help you with integration testing.
  • Maven can help you to verify the package,
  • Maven can help you install if there is any dependency.If you want to install it locally, it can help you with that. 
  • It can also help you to deploy your changes.

 

 

Maven Commands

  • Clean
    • If you want to clean the complete build and start new, then Maven Clean will help you with that.
  • Site
    • Maven site will help you help you with creating the documentation.
    • By just running Maven site, it will create all the HTML, CSS, everything.
    • It will create a project summary.

 


Related Question