Getting started with gradle and java
I always used ant with Apache Ivy or maven to build java applications, so I thought there has to be something better and easier to build the application instead of using them. So I decided to give gradle a go.
To build a project with gradle is quite simple, and unlike ant and maven, managing dependencies is really easy.
build.gradle
apply plugin: 'java'
apply plugin: 'eclipse'
version = '1.0'
eclipse {
classpath {
downloadSources=true
downloadJavadoc=true
}
}
repositories {
mavenCentral()
}
dependencies {
compile 'log4j:log4j:1.2.17'
compile 'com.google.guava:guava:18.0'
compile 'io.netty:netty-all:4.0.23.Final'
testCompile 'junit:junit:4.11'
}
jar {
from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } }
manifest {
attributes 'Implementation-Title': '', 'Implementation-Version': version
attributes 'Main-Class': 'com.matoski.blog.demo.Hello'
}
}
src/main/java/com/matoski/blog/demo/Hello.java
package com.matoski.blog.demo;
public class Hello {
public static void main(String[] args) {
System.out.println("Hello");
}
}
If you run the build command gradle build it will build the project and create a jar file so we can run it.
# gradle build
:compileJava
:processResources UP-TO-DATE
:classes
:jar
:assemble
:compileTestJava UP-TO-DATE
:processTestResources
:testClasses
:test UP-TO-DATE
:check UP-TO-DATE
:build
BUILD SUCCESSFUL
Total time: 12.48 secs
And now we can run the application easily by running
# java -jar build/libs/hello.jar
Hello
It was really simple to build everything with gradle.