Win a copy of Five Lines of Code this week in the OO, Patterns, UML and Refactoring forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Bear Bibeault
  • Ron McLeod
  • Jeanne Boyarsky
  • Paul Clapham
Sheriffs:
  • Tim Cooke
  • Liutauras Vilda
  • Junilu Lacar
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Tim Holloway
  • fred rosenberger
  • salvin francis
Bartenders:
  • Piet Souris
  • Frits Walraven
  • Carey Brown

What is Maven or Gradle or Ant?

 
Bartender
Posts: 1868
81
Android IntelliJ IDE MySQL Database Chrome Java
  • Likes 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Chances are that you will work on projects with more with one Java files.
Plus you may be using resources from third party developers in the form of JAR files.
There may also be a need to execute a command before of after a build occurs.
Sample commands to execute could include emailing status, setting up environment variables, deleting files or creating setup packages.

To handle this build and dependency systems were created. The more popular build and dependency systems are Maven, Gradle and Ant.
I think that first came Ant, then came Maven and finally Gradle. Each build system has their own idiosyncrasies, faults and strengths.

For more information regarding build systems and tools you may want to check out the build system's home page.
Some people who know these tools hang our around on the CodeRanch build areas found here https://coderanch.com/c/build-tools.

You should really become more then just aware of one or more of these systems. I believe that this BlackJack may be using Maven and/or Gradle.
 
Saloon Keeper
Posts: 12127
258
  • Likes 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
The Blackjack project in our Corral repo uses Maven. Currently it consists of a parent project (with a pom.xml in the root folder) and a core module project (with a pom.xml in the core folder).

The parent POM contains common settings for all modules. For instance, it sets the project version that will be used for every module, it sets the source version and encoding, and it configures commonly used dependencies (such as JUnit and Hamcrest). It also says what license we use and contains information about our team.

The core module POM declares what dependencies the core module relies on and what plugins it needs to build the project. It inherits configuration from the parent POM.

Maven reads these settings and uses them to compile, test and package the code. To do this locally, download Maven and run mvn package.

Check out these useful links:

http://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html
http://maven.apache.org/guides/introduction/introduction-to-the-pom.html
http://maven.apache.org/pom.html
 
Every plan is a little cooler if you have a blimp. And a tiny ad.
Building a Better World in your Backyard by Paul Wheaton and Shawn Klassen-Koop
https://coderanch.com/wiki/718759/books/Building-World-Backyard-Paul-Wheaton
    Bookmark Topic Watch Topic
  • New Topic