Upload
dmitry-buzdin
View
116
Download
0
Embed Size (px)
DESCRIPTION
Citation preview
Java Build Tools
Java User Group Latvia
www.jug.lv
AgendaAnt+IvyMavenGradleComparison
Apache Ant + Apache Ivy http://ant.apache.org
http://ant.apache.org/ivy
Ant is the build system for Java applications. Ant is written in Java.Ivy is a dependency management tool
Ant+Ivy
Ivy Dependencies File
Apache Maven 2 (3) http://maven.apache.org
Maven, a Yiddish word meaning accumulator of knowledgeMaven is a software project management tool.Ant is written in Java.
Maven 2 pom.xml
Maven 2 Lifecycle validate initialize generate-sources process-sources generate-resources process-resources compile process-classes generate-test-sources process-test-sources generate-test-resources process-test-resources test-compile process-test-classes test prepare-package package pre-integration-test integration-test post-integration-test verify install deploy
Maven 2 Multiproject
Gradle http://gradle.org
Gradle is project automation build system.Gradle is written on Groovy.
Gradle simple jar
Gradle Task
Gradle Task Rules
Gradle dependencies
Gradle plugin
gradle -q helloHi from Gradle
Gradle Multiproject
Gradle Profilinggradle –profile
Gradle Features
gradle -q distribution We build the zip with version=1.0-SNAPSHOT
gradle -q release We build the zip with version=1.0 We release now
Who usesGradle
HibernateGrailsGroovySpring (Integration and Security)GriffonGant
Maven 2all others
Ant…
Tool Comparison Ant Maven
GradleLearning difficulty 1 2 3Out of the box 3 1 2Maintenance 1 2 2Speed 2 1 ? Stability ?
ConclusionsAnt will stayMaven 2 -> Maven 3Gradle is the future?no one has obvious advantages
About MeRustam Arslanov
MD of Computer Science (RTU)Work experience as a build engineer for 5 years