Fetching contributors…
Cannot retrieve contributors at this time
124 lines (96 sloc) 3.5 KB
apply from: "gradle/setup.gradle"
apply from: "gradle/vertx.gradle"
./gradlew task_name
(or gradlew.bat task_name if you have the misfortune to have to use Windows)
If no task name is specified then the default task 'assemble' is run
Task names are:
idea - generate a skeleton IntelliJ IDEA project
eclipse - generate a skeleton Eclipse IDE project
assemble - builds the outputs, by default this is the module zip file. It can also include a jar file if produceJar
in is set to true. Outputs are created in build/libs.
if pullInDeps in is set to 'true' then the modules dependencies will be
automatically pulled into a nested mods directory inside the module during the build
copyMod - builds and copies the module to the local 'mods' directory so you can execute vertx runmod (etc)
directly from the command line
modZip - creates the module zip into build/libs
clean - cleans everything up
test - runs the tests. An nice html test report is created in build/reports/tests (index.html)
runMod - runs the module. This is similar to executing vertx runmod from the command line except that it does
not use the version of Vert.x installed and on the PATH to run it. Instead it uses the version of Vert.x
that the module was compiled and tested against.
pullInDeps - pulls in all dependencies of the module into a nested module directory
uploadArchives - upload the module zip file (and jar if one has been created) to Nexus. You will need to
configure sonatypeUsername and sonatypePassword in ~/.gradle/
install - install any jars produced to the local Maven repository (.m2)
dependencies {
Add your module jar dependencies here
compile "" - for compile time deps - this will end up in your module too!
testCompile "" - for test time deps
provided "" - if you DON'T want it to be packaged in the module zip
task prepareTestModule(type: Copy) {
destinationDir = mkdir('build/mods')
from('src/test/resources') {
include 'io.vertx~webtest~1.0.0/*'
from(testClasses) {
into 'io.vertx~webtest~1.0.0'
test {
/* Configure which tests are included
include 'org/foo/**'
exclude 'org/boo/**'
test.dependsOn prepareTestModule
If you're uploading stuff to Maven, Gradle needs to generate a POM.
Please edit the details below.
def configurePom(def pom) {
pom.project {
description 'Simple Web Server Module for Vert.x'
inceptionYear '2012'
packaging 'jar'
url ''
developers {
developer {
id 'purplefox'
name 'Tim Fox'
// email 'developer email'
scm {
url ''
licenses {
license {
name 'The Apache Software License, Version 2.0'
url ''
distribution 'repo'
properties {
setProperty('', 'UTF8')
// Map the 'provided' dependency configuration to the appropriate IDEA visibility scopes.
plugins.withType(IdeaPlugin) {
idea {
module { += configurations.provided
scopes.COMPILE.minus += configurations.provided
scopes.TEST.minus += configurations.provided
scopes.RUNTIME.minus += configurations.provided