plugins { // Apply the java plugin to add support for Java id 'java' // Apply the application plugin to add support for building an application id 'application' } // Define the main class for the application mainClassName = 'org.reso.commander.Main' sourceCompatibility = 1.8 targetCompatibility = 1.8 repositories { // Use jcenter for resolving your dependencies. // You can declare any Maven/Ivy/file repository here. jcenter() } dependencies { compile 'com.google.guava:guava:28.2-jre' compile 'commons-cli:commons-cli:1.4' compile 'org.apache.logging.log4j:log4j-api:2.13.0' compile 'org.apache.logging.log4j:log4j-slf4j-impl:2.13.0' compile 'org.apache.logging.log4j:log4j-1.2-api:2.13.0' compile 'org.apache.logging.log4j:log4j-core:2.13.0' compile 'org.apache.olingo:odata-client-api:4.7.1' compile 'org.apache.olingo:odata-commons-core:4.7.1' compile 'org.apache.olingo:odata-client-core:4.7.1' compile 'io.rest-assured:rest-assured:4.2.0' compile 'io.rest-assured:json-path:4.2.0' compile 'io.rest-assured:json-schema-validator:4.2.0' compile 'io.cucumber:cucumber-java8:5.4.0' compile 'io.cucumber:cucumber-junit:5.4.0' compile 'net.masterthought:cucumber-reporting:5.1.1' } configurations { cucumberRuntime { extendsFrom compile } } jar { manifest { attributes( 'Class-Path': configurations.compile.collect { it.getName() }.join(' '), 'Main-Class': 'org.reso.commander.App' ) } // generate "fat jar" by default from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } } } // don't suppress warnings or deprecation notices tasks.withType(JavaCompile) { options.compilerArgs << '-Xlint:unchecked' options.deprecation = true } // task for Web API Server Testing - this is what should be run in the command line task testWebApiServer_1_0_2() { dependsOn jar doLast { javaexec { main = "io.cucumber.core.cli.Main" classpath = configurations.cucumberRuntime + sourceSets.main.output + sourceSets.test.output args = [ '--strict', '--plugin', 'pretty', '--plugin', 'html:build/web-api-server-1.0.2-report', '--glue', 'org.reso.certification.stepdefs#WebAPIServer_1_0_2', 'src/main/java/org/reso/certification/features' ] systemProperties = System.getProperties() } } }