15
Java Builds at a Glance By Gabriel Dogaru

Building at a glance

Embed Size (px)

DESCRIPTION

intro into build systems and build automation for iasi-jug.ro

Citation preview

Page 1: Building at a glance

Java Builds at a Glance

By Gabriel Dogaru

Page 2: Building at a glance

Agenda

● Apache Ant● Apache Maven● Gradle● Quickstart

Page 3: Building at a glance

Wich build tool do you use?

● Make● Ant● Maven● Gradle ● Rake● Simple Build tool● Buildr

● Eclipse

● Intellij

● Netbeans

● Gant

● SuperMake

● Hyper Build

● Other ???

Page 4: Building at a glance
Page 5: Building at a glance

Why use a build tool

● Your friend might want the code● You may get old and forget stuff● An IDE will change● You are a professional

Page 6: Building at a glance

Your build Tool

● Imperative● Declarative

Page 7: Building at a glance

Apache Ant

● Apache Ant is a Java library and command-line tool whose mission is to drive processes described in build files as targets and extension points dependent upon each other.

Page 8: Building at a glance

Apache Ant

● ANT stands for “Another Neat Tool”● ANT evolved from the UNIX based build

utility called “MAKE”.● Ant has Java Class like extensions● Use of XML instead of Shell Scripts● Each task is taken care by creating its object● Standardized● Platform Independent

Page 9: Building at a glance

Apache Maven

● Maven, a Yiddish word meaning accumulator of knowledge, was originally started as an attempt to simplify the build processes in the Jakarta Turbine project.

Page 10: Building at a glance

Apache Maven Goals

● Making the build process easy● Providing a uniform build system● Providing quality project information● Providing guidelines for best practices

development● Allowing transparent migration to new

features● Convention over onfiguration

Page 11: Building at a glance

Gradle

● Gradle is build automation evolved.

Page 12: Building at a glance

Gradle

● Gradle combines the power and flexibility of Ant with the dependency management and conventions of Maven into a more effective way to build.

● Powered by a Groovy DSL

Page 13: Building at a glance

Let's make a project

Page 14: Building at a glance

Round up

● Ant is old but popular● Maven is cool● Gradle is cool, could get cooler ● Use the best tool for the job

Page 15: Building at a glance

Thank You!