Maven in layman 's
about Maven
the difference between maven and Ant:
1, ant is not an ant, but refers to "another neat tool" (another Neat tools), it is the first to build the famous tomcat,ant is also the process , the developer explicitly specify each goal, and the task required to complete the goal. for each project, development needs to rewrite the process, and there is a lot of repetition.
Ant is not dependent on management, so for a long time ant users have to manage dependencies manually, which is a headache.
2, MAVEN is declarative , the project build process and process all phases of the work required by the plug-in implementation, and most of the plug-ins are readily available, developers only need to declare the basic elements of the project, MAVEN executes the built-in complete build process. This eliminates duplication to a large extent.
Not only does Maven have built-in dependency management, but also a central repository that could have the most Java open source software packages in the world, and MAVEN users can enjoy it without any configuration.
maven Core Values
simple : Maven exposes a consistent, concise set of operating interfaces that can help team members get out of the original, highly customizable, complex build system and simplify the complexity of building systems using Maven's existing, mature, and stable components.
Communication and feedback : When combined with a version control system, everyone can perform the latest builds and get feedback quickly.
Test-driven Development (TDD): TDD emphasizes test-first and all products should be covered by test cases. Testing is one of the most important components of the Maven life cycle, and Maven has ready-made, mature plug-in support such as JUnit and testng.
10-minute build : The 10-minute build emphasizes that we can build the final product from the source code quickly and at any time. This is what Maven is good at, with just a few configurations, and then a simple command to let maven clean, compile, test, package, deploy, and then get the final product.
Continuous Integration (CI): CI emphasizes that the project integrates the latest code in a short period of time (e.g. 15 minutes). In fact, the premise of CI is source management system and build system. The industry's popular CI servers, such as Hudson and CruiseControl, are now well integrated with Maven. That said, continuous integration becomes more convenient when you use Maven.
Workplace with credit: This practice emphasizes the ability of developers to quickly and easily understand the latest state of a project.