Moved to multi-project gradle build; added (non-working) hello world for bulletin-board server using Jetty and Jersey
parent
d75060e914
commit
eb1230d719
207
build.gradle
207
build.gradle
|
@ -1,206 +1,11 @@
|
||||||
|
|
||||||
plugins {
|
|
||||||
id "us.kirchmeier.capsule" version "1.0.1"
|
|
||||||
id 'com.google.protobuf' version '0.7.0'
|
|
||||||
}
|
|
||||||
|
|
||||||
apply plugin: 'java'
|
|
||||||
apply plugin: 'com.google.protobuf'
|
|
||||||
apply plugin: 'eclipse'
|
|
||||||
apply plugin: 'idea'
|
|
||||||
|
|
||||||
apply plugin: 'application'
|
|
||||||
|
|
||||||
apply plugin: 'maven-publish'
|
|
||||||
|
|
||||||
mainClassName='Demo'
|
|
||||||
|
|
||||||
// Is this a snapshot version?
|
|
||||||
ext { isSnapshot = false }
|
|
||||||
|
|
||||||
ext {
|
|
||||||
groupId = 'org.factcenter'
|
|
||||||
nexusRepository = "https://cs.idc.ac.il/nexus/content/groups/${isSnapshot ? 'unstable' : 'public'}/"
|
|
||||||
|
|
||||||
// Credentials for IDC nexus repositories (needed only for using unstable repositories and publishing)
|
|
||||||
// Should be set in ${HOME}/.gradle/gradle.properties
|
|
||||||
nexusUser = project.hasProperty('nexusUser') ? project.property('nexusUser') : ""
|
|
||||||
nexusPassword = project.hasProperty('nexusPassword') ? project.property('nexusPassword') : ""
|
|
||||||
}
|
|
||||||
|
|
||||||
description = "Meerkat Voting"
|
|
||||||
|
|
||||||
// Your project version
|
|
||||||
version = "0.0"
|
|
||||||
|
|
||||||
version += "${isSnapshot ? '-SNAPSHOT' : ''}"
|
|
||||||
|
|
||||||
|
|
||||||
dependencies {
|
subprojects { proj ->
|
||||||
// Logging
|
proj.afterEvaluate {
|
||||||
compile 'org.slf4j:slf4j-api:1.7.7'
|
// Used to generate initial maven-dir layout
|
||||||
runtime 'ch.qos.logback:logback-classic:1.1.2'
|
task "create-dirs" { description = "Create default maven directory structure" } << {
|
||||||
runtime 'ch.qos.logback:logback-core:1.1.2'
|
sourceSets*.java.srcDirs*.each { it.mkdirs() }
|
||||||
|
sourceSets*.resources.srcDirs*.each { it.mkdirs() }
|
||||||
// Google protobufs
|
|
||||||
compile 'com.google.protobuf:protobuf-java:3.+'
|
|
||||||
|
|
||||||
testCompile 'junit:junit:4.+'
|
|
||||||
|
|
||||||
runtime 'org.codehaus.groovy:groovy:2.4.+'
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*==== You probably don't have to edit below this line =======*/
|
|
||||||
|
|
||||||
protobuf {
|
|
||||||
// Configure the protoc executable
|
|
||||||
protoc {
|
|
||||||
// Download from repositories
|
|
||||||
artifact = 'com.google.protobuf:protoc:3.+'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
idea {
|
|
||||||
module {
|
|
||||||
// add protobuf generated sources to generated source dir.
|
|
||||||
sourceDirs += file(protobuf.generatedFilesBaseDir)
|
|
||||||
generatedSourceDirs += file(protobuf.generatedFilesBaseDir)
|
|
||||||
|
|
||||||
// Don't exclude build directory
|
|
||||||
excludeDirs -= file(buildDir)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Used to generate initial maven-dir layout
|
|
||||||
task "create-dirs" { description = "Create default maven directory structure" } << {
|
|
||||||
sourceSets*.java.srcDirs*.each { it.mkdirs() }
|
|
||||||
sourceSets*.resources.srcDirs*.each { it.mkdirs() }
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*===================================
|
|
||||||
* "Fat" Build targets
|
|
||||||
*===================================*/
|
|
||||||
|
|
||||||
task fatjar(type: Jar) {
|
|
||||||
description = "Generate a single jar containing everything. Use -Pfatmain=... to override main class"
|
|
||||||
|
|
||||||
destinationDir = buildDir
|
|
||||||
|
|
||||||
def fatMain = hasProperty('fatmain') ? fatmain : mainClassName
|
|
||||||
def testJar = hasProperty('test')
|
|
||||||
|
|
||||||
appendix = "${fatMain}-fat"
|
|
||||||
|
|
||||||
if (testJar) {
|
|
||||||
from sourceSets.test.output
|
|
||||||
from configurations.testRuntime.collect { it.isDirectory() ? it : zipTree(it) }
|
|
||||||
}
|
|
||||||
|
|
||||||
from sourceSets.main.output // that's it
|
|
||||||
from { configurations.runtime.collect { it.isDirectory() ? it : zipTree(it) } }
|
|
||||||
|
|
||||||
exclude 'META-INF/MANIFEST.MF'
|
|
||||||
exclude 'META-INF/*.SF'
|
|
||||||
exclude 'META-INF/*.DSA'
|
|
||||||
exclude 'META-INF/*.RSA'
|
|
||||||
|
|
||||||
|
|
||||||
manifest { attributes 'Main-Class': fatMain }
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
task mavenCapsule(type: MavenCapsule){
|
|
||||||
description = "Generate a capsule jar that automatically downloads and caches dependencies when run."
|
|
||||||
applicationClass mainClassName
|
|
||||||
destinationDir = buildDir
|
|
||||||
}
|
|
||||||
|
|
||||||
task fatCapsule(type: FatCapsule){
|
|
||||||
description = "Generate a single capsule jar containing everything. Use -Pfatmain=... to override main class"
|
|
||||||
|
|
||||||
destinationDir = buildDir
|
|
||||||
|
|
||||||
def fatMain = hasProperty('fatmain') ? fatmain : mainClassName
|
|
||||||
|
|
||||||
applicationClass fatMain
|
|
||||||
|
|
||||||
def testJar = hasProperty('test')
|
|
||||||
|
|
||||||
if (hasProperty('fatmain')) {
|
|
||||||
appendix = "fat-${fatMain}"
|
|
||||||
} else {
|
|
||||||
appendix = "fat"
|
|
||||||
}
|
|
||||||
|
|
||||||
if (testJar) {
|
|
||||||
from sourceSets.test.output
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/*===================================
|
|
||||||
* Repositories
|
|
||||||
*===================================*/
|
|
||||||
|
|
||||||
repositories {
|
|
||||||
|
|
||||||
// Prefer the local nexus repository (it may have 3rd party artifacts not found in mavenCentral)
|
|
||||||
maven {
|
|
||||||
url nexusRepository
|
|
||||||
|
|
||||||
if (isSnapshot) {
|
|
||||||
credentials { username
|
|
||||||
password
|
|
||||||
|
|
||||||
username nexusUser
|
|
||||||
password nexusPassword
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Use 'maven central' for other dependencies.
|
|
||||||
mavenCentral()
|
|
||||||
}
|
|
||||||
|
|
||||||
task "info" << {
|
|
||||||
println "Project: ${project.name}"
|
|
||||||
println "Description: ${project.description}"
|
|
||||||
println "--------------------------"
|
|
||||||
println "GroupId: $groupId"
|
|
||||||
println "Version: $version (${isSnapshot ? 'snapshot' : 'release'})"
|
|
||||||
println ""
|
|
||||||
}
|
|
||||||
info.description 'Print some information about project parameters'
|
|
||||||
|
|
||||||
|
|
||||||
/*===================================
|
|
||||||
* Publishing
|
|
||||||
*===================================*/
|
|
||||||
|
|
||||||
publishing {
|
|
||||||
publications {
|
|
||||||
mavenJava(MavenPublication) {
|
|
||||||
groupId project.groupId
|
|
||||||
pom.withXml {
|
|
||||||
asNode().appendNode('description', project.description)
|
|
||||||
}
|
|
||||||
from project.components.java
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
repositories {
|
|
||||||
maven {
|
|
||||||
url "https://cs.idc.ac.il/nexus/content/repositories/${project.isSnapshot ? 'snapshots' : 'releases'}"
|
|
||||||
credentials { username
|
|
||||||
password
|
|
||||||
|
|
||||||
username nexusUser
|
|
||||||
password nexusPassword
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,177 @@
|
||||||
|
|
||||||
|
plugins {
|
||||||
|
id "us.kirchmeier.capsule" version "1.0.1"
|
||||||
|
id 'com.google.protobuf' version '0.7.0'
|
||||||
|
}
|
||||||
|
|
||||||
|
apply plugin: 'java'
|
||||||
|
apply plugin: 'eclipse'
|
||||||
|
apply plugin: 'idea'
|
||||||
|
|
||||||
|
// Uncomment both lines below to define an application (must set mainClassName
|
||||||
|
//apply plugin: 'application'
|
||||||
|
//mainClassName='your.main.ApplicationClass'
|
||||||
|
|
||||||
|
apply plugin: 'maven-publish'
|
||||||
|
|
||||||
|
// Is this a snapshot version?
|
||||||
|
ext { isSnapshot = false }
|
||||||
|
|
||||||
|
ext {
|
||||||
|
groupId = 'org.factcenter.meerkat'
|
||||||
|
nexusRepository = "https://cs.idc.ac.il/nexus/content/groups/${isSnapshot ? 'unstable' : 'public'}/"
|
||||||
|
|
||||||
|
// Credentials for IDC nexus repositories (needed only for using unstable repositories and publishing)
|
||||||
|
// Should be set in ${HOME}/.gradle/gradle.properties
|
||||||
|
nexusUser = project.hasProperty('nexusUser') ? project.property('nexusUser') : ""
|
||||||
|
nexusPassword = project.hasProperty('nexusPassword') ? project.property('nexusPassword') : ""
|
||||||
|
}
|
||||||
|
|
||||||
|
description = "TODO: Add a description"
|
||||||
|
|
||||||
|
// Your project version
|
||||||
|
version = "0.0"
|
||||||
|
|
||||||
|
version += "${isSnapshot ? '-SNAPSHOT' : ''}"
|
||||||
|
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
// Meerkat common
|
||||||
|
compile project(':meerkat-common')
|
||||||
|
|
||||||
|
// Logging
|
||||||
|
compile 'org.slf4j:slf4j-api:1.7.7'
|
||||||
|
runtime 'ch.qos.logback:logback-classic:1.1.2'
|
||||||
|
runtime 'ch.qos.logback:logback-core:1.1.2'
|
||||||
|
|
||||||
|
// Google protobufs
|
||||||
|
compile 'com.google.protobuf:protobuf-java:3.+'
|
||||||
|
|
||||||
|
testCompile 'junit:junit:4.+'
|
||||||
|
|
||||||
|
runtime 'org.codehaus.groovy:groovy:2.4.+'
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*==== You probably don't have to edit below this line =======*/
|
||||||
|
|
||||||
|
protobuf {
|
||||||
|
// Configure the protoc executable
|
||||||
|
protoc {
|
||||||
|
// Download from repositories
|
||||||
|
artifact = 'com.google.protobuf:protoc:3.+'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
idea {
|
||||||
|
module {
|
||||||
|
// add protobuf generated sources to generated source dir.
|
||||||
|
sourceDirs += file(protobuf.generatedFilesBaseDir)
|
||||||
|
generatedSourceDirs += file(protobuf.generatedFilesBaseDir)
|
||||||
|
|
||||||
|
// Don't exclude build directory
|
||||||
|
excludeDirs -= file(buildDir)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*===================================
|
||||||
|
* "Fat" Build targets
|
||||||
|
*===================================*/
|
||||||
|
|
||||||
|
|
||||||
|
task mavenCapsule(type: MavenCapsule){
|
||||||
|
description = "Generate a capsule jar that automatically downloads and caches dependencies when run."
|
||||||
|
applicationClass mainClassName
|
||||||
|
destinationDir = buildDir
|
||||||
|
}
|
||||||
|
|
||||||
|
task fatCapsule(type: FatCapsule){
|
||||||
|
description = "Generate a single capsule jar containing everything. Use -Pfatmain=... to override main class"
|
||||||
|
|
||||||
|
destinationDir = buildDir
|
||||||
|
|
||||||
|
def fatMain = hasProperty('fatmain') ? fatmain : mainClassName
|
||||||
|
|
||||||
|
applicationClass fatMain
|
||||||
|
|
||||||
|
def testJar = hasProperty('test')
|
||||||
|
|
||||||
|
if (hasProperty('fatmain')) {
|
||||||
|
appendix = "fat-${fatMain}"
|
||||||
|
} else {
|
||||||
|
appendix = "fat"
|
||||||
|
}
|
||||||
|
|
||||||
|
if (testJar) {
|
||||||
|
from sourceSets.test.output
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*===================================
|
||||||
|
* Repositories
|
||||||
|
*===================================*/
|
||||||
|
|
||||||
|
repositories {
|
||||||
|
|
||||||
|
// Prefer the local nexus repository (it may have 3rd party artifacts not found in mavenCentral)
|
||||||
|
maven {
|
||||||
|
url nexusRepository
|
||||||
|
|
||||||
|
if (isSnapshot) {
|
||||||
|
credentials { username
|
||||||
|
password
|
||||||
|
|
||||||
|
username nexusUser
|
||||||
|
password nexusPassword
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Use local maven repository
|
||||||
|
mavenLocal()
|
||||||
|
|
||||||
|
// Use 'maven central' for other dependencies.
|
||||||
|
mavenCentral()
|
||||||
|
}
|
||||||
|
|
||||||
|
task "info" << {
|
||||||
|
println "Project: ${project.name}"
|
||||||
|
println "Description: ${project.description}"
|
||||||
|
println "--------------------------"
|
||||||
|
println "GroupId: $groupId"
|
||||||
|
println "Version: $version (${isSnapshot ? 'snapshot' : 'release'})"
|
||||||
|
println ""
|
||||||
|
}
|
||||||
|
info.description 'Print some information about project parameters'
|
||||||
|
|
||||||
|
|
||||||
|
/*===================================
|
||||||
|
* Publishing
|
||||||
|
*===================================*/
|
||||||
|
|
||||||
|
publishing {
|
||||||
|
publications {
|
||||||
|
mavenJava(MavenPublication) {
|
||||||
|
groupId project.groupId
|
||||||
|
pom.withXml {
|
||||||
|
asNode().appendNode('description', project.description)
|
||||||
|
}
|
||||||
|
from project.components.java
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
repositories {
|
||||||
|
maven {
|
||||||
|
url "https://cs.idc.ac.il/nexus/content/repositories/${project.isSnapshot ? 'snapshots' : 'releases'}"
|
||||||
|
credentials { username
|
||||||
|
password
|
||||||
|
|
||||||
|
username nexusUser
|
||||||
|
password nexusPassword
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,211 @@
|
||||||
|
|
||||||
|
plugins {
|
||||||
|
id "us.kirchmeier.capsule" version "1.0.1"
|
||||||
|
id 'com.google.protobuf' version '0.7.0'
|
||||||
|
}
|
||||||
|
|
||||||
|
apply plugin: 'java'
|
||||||
|
apply plugin: 'eclipse'
|
||||||
|
apply plugin: 'idea'
|
||||||
|
|
||||||
|
apply plugin: 'jetty'
|
||||||
|
//mainClassName = 'Demo'
|
||||||
|
|
||||||
|
apply plugin: 'maven-publish'
|
||||||
|
|
||||||
|
// Is this a snapshot version?
|
||||||
|
ext { isSnapshot = false }
|
||||||
|
|
||||||
|
ext {
|
||||||
|
groupId = 'org.factcenter.meerkat'
|
||||||
|
nexusRepository = "https://cs.idc.ac.il/nexus/content/groups/${isSnapshot ? 'unstable' : 'public'}/"
|
||||||
|
|
||||||
|
// Credentials for IDC nexus repositories (needed only for using unstable repositories and publishing)
|
||||||
|
// Should be set in ${HOME}/.gradle/gradle.properties
|
||||||
|
nexusUser = project.hasProperty('nexusUser') ? project.property('nexusUser') : ""
|
||||||
|
nexusPassword = project.hasProperty('nexusPassword') ? project.property('nexusPassword') : ""
|
||||||
|
}
|
||||||
|
|
||||||
|
description = "TODO: Add a description"
|
||||||
|
|
||||||
|
// Your project version
|
||||||
|
version = "0.0"
|
||||||
|
|
||||||
|
version += "${isSnapshot ? '-SNAPSHOT' : ''}"
|
||||||
|
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
// Meerkat common
|
||||||
|
compile project(':meerkat-common')
|
||||||
|
|
||||||
|
// Jersey for RESTful API
|
||||||
|
compile 'org.glassfish.jersey.containers:jersey-container-servlet:2.22.+'
|
||||||
|
|
||||||
|
// Logging
|
||||||
|
compile 'org.slf4j:slf4j-api:1.7.7'
|
||||||
|
runtime 'ch.qos.logback:logback-classic:1.1.2'
|
||||||
|
runtime 'ch.qos.logback:logback-core:1.1.2'
|
||||||
|
|
||||||
|
// Google protobufs
|
||||||
|
compile 'com.google.protobuf:protobuf-java:3.+'
|
||||||
|
|
||||||
|
testCompile 'junit:junit:4.+'
|
||||||
|
|
||||||
|
runtime 'org.codehaus.groovy:groovy:2.4.+'
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
test {
|
||||||
|
exclude '**/*IntegrationTest*'
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
task integrationTest(type: Test) {
|
||||||
|
include '**/*IntegrationTest*'
|
||||||
|
jettyRun {
|
||||||
|
httpPort = 8081 // Port for test
|
||||||
|
daemon = true
|
||||||
|
stopPort = 8091 // Port for stop signal
|
||||||
|
stopKey = 'stopKey'
|
||||||
|
}
|
||||||
|
jettyStop {
|
||||||
|
stopPort = 8091 // Port for stop signal
|
||||||
|
stopKey = 'stopKey'
|
||||||
|
}
|
||||||
|
|
||||||
|
doFirst {
|
||||||
|
jettyRun.execute()
|
||||||
|
}
|
||||||
|
|
||||||
|
doLast {
|
||||||
|
jettyStop.execute()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*==== You probably don't have to edit below this line =======*/
|
||||||
|
|
||||||
|
protobuf {
|
||||||
|
// Configure the protoc executable
|
||||||
|
protoc {
|
||||||
|
// Download from repositories
|
||||||
|
artifact = 'com.google.protobuf:protoc:3.+'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
idea {
|
||||||
|
module {
|
||||||
|
// add protobuf generated sources to generated source dir.
|
||||||
|
sourceDirs += file(protobuf.generatedFilesBaseDir)
|
||||||
|
generatedSourceDirs += file(protobuf.generatedFilesBaseDir)
|
||||||
|
|
||||||
|
// Don't exclude build directory
|
||||||
|
excludeDirs -= file(buildDir)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*===================================
|
||||||
|
* "Fat" Build targets
|
||||||
|
*===================================*/
|
||||||
|
|
||||||
|
if (project.hasProperty('mainClassName') && (mainClassName != null)) {
|
||||||
|
|
||||||
|
task mavenCapsule(type: MavenCapsule) {
|
||||||
|
description = "Generate a capsule jar that automatically downloads and caches dependencies when run."
|
||||||
|
applicationClass mainClassName
|
||||||
|
destinationDir = buildDir
|
||||||
|
}
|
||||||
|
|
||||||
|
task fatCapsule(type: FatCapsule) {
|
||||||
|
description = "Generate a single capsule jar containing everything. Use -Pfatmain=... to override main class"
|
||||||
|
|
||||||
|
destinationDir = buildDir
|
||||||
|
|
||||||
|
def fatMain = hasProperty('fatmain') ? fatmain : mainClassName
|
||||||
|
|
||||||
|
applicationClass fatMain
|
||||||
|
|
||||||
|
def testJar = hasProperty('test')
|
||||||
|
|
||||||
|
if (hasProperty('fatmain')) {
|
||||||
|
appendix = "fat-${fatMain}"
|
||||||
|
} else {
|
||||||
|
appendix = "fat"
|
||||||
|
}
|
||||||
|
|
||||||
|
if (testJar) {
|
||||||
|
from sourceSets.test.output
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*===================================
|
||||||
|
* Repositories
|
||||||
|
*===================================*/
|
||||||
|
|
||||||
|
repositories {
|
||||||
|
|
||||||
|
// Prefer the local nexus repository (it may have 3rd party artifacts not found in mavenCentral)
|
||||||
|
maven {
|
||||||
|
url nexusRepository
|
||||||
|
|
||||||
|
if (isSnapshot) {
|
||||||
|
credentials { username
|
||||||
|
password
|
||||||
|
|
||||||
|
username nexusUser
|
||||||
|
password nexusPassword
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Use local maven repository
|
||||||
|
mavenLocal()
|
||||||
|
|
||||||
|
// Use 'maven central' for other dependencies.
|
||||||
|
mavenCentral()
|
||||||
|
}
|
||||||
|
|
||||||
|
task "info" << {
|
||||||
|
println "Project: ${project.name}"
|
||||||
|
println "Description: ${project.description}"
|
||||||
|
println "--------------------------"
|
||||||
|
println "GroupId: $groupId"
|
||||||
|
println "Version: $version (${isSnapshot ? 'snapshot' : 'release'})"
|
||||||
|
println ""
|
||||||
|
}
|
||||||
|
info.description 'Print some information about project parameters'
|
||||||
|
|
||||||
|
|
||||||
|
/*===================================
|
||||||
|
* Publishing
|
||||||
|
*===================================*/
|
||||||
|
|
||||||
|
publishing {
|
||||||
|
publications {
|
||||||
|
mavenJava(MavenPublication) {
|
||||||
|
groupId project.groupId
|
||||||
|
pom.withXml {
|
||||||
|
asNode().appendNode('description', project.description)
|
||||||
|
}
|
||||||
|
from project.components.java
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
repositories {
|
||||||
|
maven {
|
||||||
|
url "https://cs.idc.ac.il/nexus/content/repositories/${project.isSnapshot ? 'snapshots' : 'releases'}"
|
||||||
|
credentials { username
|
||||||
|
password
|
||||||
|
|
||||||
|
username nexusUser
|
||||||
|
password nexusPassword
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
../gradlew
|
|
@ -0,0 +1,9 @@
|
||||||
|
package service;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public class HelloWorldService {
|
||||||
|
public String sayHello() {
|
||||||
|
return "Hello, World!";
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,16 @@
|
||||||
|
package webapp;
|
||||||
|
|
||||||
|
import javax.ws.rs.GET;
|
||||||
|
import javax.ws.rs.Path;
|
||||||
|
|
||||||
|
import service.HelloWorldService;
|
||||||
|
|
||||||
|
@Path("/hello")
|
||||||
|
public class HelloWebApp {
|
||||||
|
private static HelloWorldService helloWorldService = new HelloWorldService();
|
||||||
|
|
||||||
|
@GET()
|
||||||
|
public String hello() {
|
||||||
|
return helloWorldService.sayHello();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,17 @@
|
||||||
|
<web-app>
|
||||||
|
<servlet>
|
||||||
|
<servlet-name>Jersey Hello World Application</servlet-name>
|
||||||
|
<servlet-class>
|
||||||
|
org.glassfish.jersey.servlet.ServletContainer
|
||||||
|
</servlet-class>
|
||||||
|
<init-param>
|
||||||
|
<param-name>jersey.config.server.provider.packages</param-name>
|
||||||
|
<param-value>webapp</param-value>
|
||||||
|
</init-param>
|
||||||
|
<load-on-startup>1</load-on-startup>
|
||||||
|
</servlet>
|
||||||
|
<servlet-mapping>
|
||||||
|
<servlet-name>Jersey Hello World Application</servlet-name>
|
||||||
|
<url-pattern>/*</url-pattern>
|
||||||
|
</servlet-mapping>
|
||||||
|
</web-app>
|
|
@ -0,0 +1,20 @@
|
||||||
|
import javax.ws.rs.client.Client;
|
||||||
|
import javax.ws.rs.client.ClientBuilder;
|
||||||
|
import javax.ws.rs.client.WebTarget;
|
||||||
|
import static org.hamcrest.CoreMatchers.is;
|
||||||
|
import static org.hamcrest.MatcherAssert.assertThat;
|
||||||
|
import org.junit.Test;
|
||||||
|
|
||||||
|
public class HelloIntegrationTest {
|
||||||
|
|
||||||
|
private static String HELLO_URL = "http://localhost:8080/hello";
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testHello() throws Exception {
|
||||||
|
Client client = ClientBuilder.newClient();
|
||||||
|
WebTarget webTarget = client.target(HELLO_URL);
|
||||||
|
String response = webTarget.request().get(String.class);
|
||||||
|
System.out.println(response);
|
||||||
|
assertThat(response, is("Hello, World!"));
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,199 @@
|
||||||
|
|
||||||
|
plugins {
|
||||||
|
id "us.kirchmeier.capsule" version "1.0.1"
|
||||||
|
id 'com.google.protobuf' version '0.7.0'
|
||||||
|
}
|
||||||
|
|
||||||
|
apply plugin: 'java'
|
||||||
|
apply plugin: 'com.google.protobuf'
|
||||||
|
apply plugin: 'eclipse'
|
||||||
|
apply plugin: 'idea'
|
||||||
|
|
||||||
|
apply plugin: 'application'
|
||||||
|
|
||||||
|
apply plugin: 'maven-publish'
|
||||||
|
|
||||||
|
mainClassName='Demo'
|
||||||
|
|
||||||
|
// Is this a snapshot version?
|
||||||
|
ext { isSnapshot = false }
|
||||||
|
|
||||||
|
ext {
|
||||||
|
groupId = 'org.factcenter.meerkat'
|
||||||
|
nexusRepository = "https://cs.idc.ac.il/nexus/content/groups/${isSnapshot ? 'unstable' : 'public'}/"
|
||||||
|
|
||||||
|
// Credentials for IDC nexus repositories (needed only for using unstable repositories and publishing)
|
||||||
|
// Should be set in ${HOME}/.gradle/gradle.properties
|
||||||
|
nexusUser = project.hasProperty('nexusUser') ? project.property('nexusUser') : ""
|
||||||
|
nexusPassword = project.hasProperty('nexusPassword') ? project.property('nexusPassword') : ""
|
||||||
|
}
|
||||||
|
|
||||||
|
description = "Meerkat Voting Common Library"
|
||||||
|
|
||||||
|
// Your project version
|
||||||
|
version = "0.0"
|
||||||
|
|
||||||
|
version += "${isSnapshot ? '-SNAPSHOT' : ''}"
|
||||||
|
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
// Logging
|
||||||
|
compile 'org.slf4j:slf4j-api:1.7.7'
|
||||||
|
runtime 'ch.qos.logback:logback-classic:1.1.2'
|
||||||
|
runtime 'ch.qos.logback:logback-core:1.1.2'
|
||||||
|
|
||||||
|
// Google protobufs
|
||||||
|
compile 'com.google.protobuf:protobuf-java:3.+'
|
||||||
|
|
||||||
|
testCompile 'junit:junit:4.+'
|
||||||
|
|
||||||
|
runtime 'org.codehaus.groovy:groovy:2.4.+'
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*==== You probably don't have to edit below this line =======*/
|
||||||
|
|
||||||
|
protobuf {
|
||||||
|
// Configure the protoc executable
|
||||||
|
protoc {
|
||||||
|
// Download from repositories
|
||||||
|
artifact = 'com.google.protobuf:protoc:3.+'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
idea {
|
||||||
|
module {
|
||||||
|
// add protobuf generated sources to generated source dir.
|
||||||
|
sourceDirs += file(protobuf.generatedFilesBaseDir)
|
||||||
|
generatedSourceDirs += file(protobuf.generatedFilesBaseDir)
|
||||||
|
|
||||||
|
// Don't exclude build directory
|
||||||
|
excludeDirs -= file(buildDir)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*===================================
|
||||||
|
* "Fat" Build targets
|
||||||
|
*===================================*/
|
||||||
|
|
||||||
|
task fatjar(type: Jar) {
|
||||||
|
description = "Generate a single jar containing everything. Use -Pfatmain=... to override main class"
|
||||||
|
|
||||||
|
destinationDir = buildDir
|
||||||
|
|
||||||
|
def fatMain = hasProperty('fatmain') ? fatmain : mainClassName
|
||||||
|
def testJar = hasProperty('test')
|
||||||
|
|
||||||
|
appendix = "${fatMain}-fat"
|
||||||
|
|
||||||
|
if (testJar) {
|
||||||
|
from sourceSets.test.output
|
||||||
|
from configurations.testRuntime.collect { it.isDirectory() ? it : zipTree(it) }
|
||||||
|
}
|
||||||
|
|
||||||
|
from sourceSets.main.output // that's it
|
||||||
|
from { configurations.runtime.collect { it.isDirectory() ? it : zipTree(it) } }
|
||||||
|
|
||||||
|
exclude 'META-INF/MANIFEST.MF'
|
||||||
|
exclude 'META-INF/*.SF'
|
||||||
|
exclude 'META-INF/*.DSA'
|
||||||
|
exclude 'META-INF/*.RSA'
|
||||||
|
|
||||||
|
|
||||||
|
manifest { attributes 'Main-Class': fatMain }
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
task mavenCapsule(type: MavenCapsule){
|
||||||
|
description = "Generate a capsule jar that automatically downloads and caches dependencies when run."
|
||||||
|
applicationClass mainClassName
|
||||||
|
destinationDir = buildDir
|
||||||
|
}
|
||||||
|
|
||||||
|
task fatCapsule(type: FatCapsule){
|
||||||
|
description = "Generate a single capsule jar containing everything. Use -Pfatmain=... to override main class"
|
||||||
|
|
||||||
|
destinationDir = buildDir
|
||||||
|
|
||||||
|
def fatMain = hasProperty('fatmain') ? fatmain : mainClassName
|
||||||
|
|
||||||
|
applicationClass fatMain
|
||||||
|
|
||||||
|
def testJar = hasProperty('test')
|
||||||
|
|
||||||
|
if (hasProperty('fatmain')) {
|
||||||
|
appendix = "fat-${fatMain}"
|
||||||
|
} else {
|
||||||
|
appendix = "fat"
|
||||||
|
}
|
||||||
|
|
||||||
|
if (testJar) {
|
||||||
|
from sourceSets.test.output
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*===================================
|
||||||
|
* Repositories
|
||||||
|
*===================================*/
|
||||||
|
|
||||||
|
repositories {
|
||||||
|
|
||||||
|
// Prefer the local nexus repository (it may have 3rd party artifacts not found in mavenCentral)
|
||||||
|
maven {
|
||||||
|
url nexusRepository
|
||||||
|
|
||||||
|
if (isSnapshot) {
|
||||||
|
credentials { username
|
||||||
|
password
|
||||||
|
|
||||||
|
username nexusUser
|
||||||
|
password nexusPassword
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Use 'maven central' for other dependencies.
|
||||||
|
mavenCentral()
|
||||||
|
}
|
||||||
|
|
||||||
|
task "info" << {
|
||||||
|
println "Project: ${project.name}"
|
||||||
|
println "Description: ${project.description}"
|
||||||
|
println "--------------------------"
|
||||||
|
println "GroupId: $groupId"
|
||||||
|
println "Version: $version (${isSnapshot ? 'snapshot' : 'release'})"
|
||||||
|
println ""
|
||||||
|
}
|
||||||
|
info.description 'Print some information about project parameters'
|
||||||
|
|
||||||
|
|
||||||
|
/*===================================
|
||||||
|
* Publishing
|
||||||
|
*===================================*/
|
||||||
|
|
||||||
|
publishing {
|
||||||
|
publications {
|
||||||
|
mavenJava(MavenPublication) {
|
||||||
|
groupId project.groupId
|
||||||
|
pom.withXml {
|
||||||
|
asNode().appendNode('description', project.description)
|
||||||
|
}
|
||||||
|
from project.components.java
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
repositories {
|
||||||
|
maven {
|
||||||
|
url "https://cs.idc.ac.il/nexus/content/repositories/${project.isSnapshot ? 'snapshots' : 'releases'}"
|
||||||
|
credentials { username
|
||||||
|
password
|
||||||
|
|
||||||
|
username nexusUser
|
||||||
|
password nexusPassword
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
../gradlew
|
|
@ -0,0 +1,178 @@
|
||||||
|
|
||||||
|
plugins {
|
||||||
|
id "us.kirchmeier.capsule" version "1.0.1"
|
||||||
|
id 'com.google.protobuf' version '0.7.0'
|
||||||
|
}
|
||||||
|
|
||||||
|
apply plugin: 'java'
|
||||||
|
apply plugin: 'eclipse'
|
||||||
|
apply plugin: 'idea'
|
||||||
|
|
||||||
|
apply plugin: 'application'
|
||||||
|
|
||||||
|
apply plugin: 'maven-publish'
|
||||||
|
|
||||||
|
// Is this a snapshot version?
|
||||||
|
ext { isSnapshot = false }
|
||||||
|
|
||||||
|
ext {
|
||||||
|
groupId = 'org.factcenter.meerkat'
|
||||||
|
nexusRepository = "https://cs.idc.ac.il/nexus/content/groups/${isSnapshot ? 'unstable' : 'public'}/"
|
||||||
|
|
||||||
|
// Credentials for IDC nexus repositories (needed only for using unstable repositories and publishing)
|
||||||
|
// Should be set in ${HOME}/.gradle/gradle.properties
|
||||||
|
nexusUser = project.hasProperty('nexusUser') ? project.property('nexusUser') : ""
|
||||||
|
nexusPassword = project.hasProperty('nexusPassword') ? project.property('nexusPassword') : ""
|
||||||
|
}
|
||||||
|
|
||||||
|
description = "TODO: Add a description"
|
||||||
|
|
||||||
|
// Your project version
|
||||||
|
version = "0.0"
|
||||||
|
|
||||||
|
version += "${isSnapshot ? '-SNAPSHOT' : ''}"
|
||||||
|
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
// Meerkat common
|
||||||
|
compile project(':meerkat-common')
|
||||||
|
|
||||||
|
// Logging
|
||||||
|
compile 'org.slf4j:slf4j-api:1.7.7'
|
||||||
|
runtime 'ch.qos.logback:logback-classic:1.1.2'
|
||||||
|
runtime 'ch.qos.logback:logback-core:1.1.2'
|
||||||
|
|
||||||
|
// Google protobufs
|
||||||
|
compile 'com.google.protobuf:protobuf-java:3.+'
|
||||||
|
|
||||||
|
testCompile 'junit:junit:4.+'
|
||||||
|
|
||||||
|
runtime 'org.codehaus.groovy:groovy:2.4.+'
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*==== You probably don't have to edit below this line =======*/
|
||||||
|
|
||||||
|
protobuf {
|
||||||
|
// Configure the protoc executable
|
||||||
|
protoc {
|
||||||
|
// Download from repositories
|
||||||
|
artifact = 'com.google.protobuf:protoc:3.+'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
idea {
|
||||||
|
module {
|
||||||
|
// add protobuf generated sources to generated source dir.
|
||||||
|
sourceDirs += file(protobuf.generatedFilesBaseDir)
|
||||||
|
generatedSourceDirs += file(protobuf.generatedFilesBaseDir)
|
||||||
|
|
||||||
|
// Don't exclude build directory
|
||||||
|
excludeDirs -= file(buildDir)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*===================================
|
||||||
|
* "Fat" Build targets
|
||||||
|
*===================================*/
|
||||||
|
|
||||||
|
|
||||||
|
if (project.hasProperty('mainClassName') && (mainClassName != null)) {
|
||||||
|
|
||||||
|
task mavenCapsule(type: MavenCapsule) {
|
||||||
|
description = "Generate a capsule jar that automatically downloads and caches dependencies when run."
|
||||||
|
applicationClass mainClassName
|
||||||
|
destinationDir = buildDir
|
||||||
|
}
|
||||||
|
|
||||||
|
task fatCapsule(type: FatCapsule) {
|
||||||
|
description = "Generate a single capsule jar containing everything. Use -Pfatmain=... to override main class"
|
||||||
|
|
||||||
|
destinationDir = buildDir
|
||||||
|
|
||||||
|
def fatMain = hasProperty('fatmain') ? fatmain : mainClassName
|
||||||
|
|
||||||
|
applicationClass fatMain
|
||||||
|
|
||||||
|
def testJar = hasProperty('test')
|
||||||
|
|
||||||
|
if (hasProperty('fatmain')) {
|
||||||
|
appendix = "fat-${fatMain}"
|
||||||
|
} else {
|
||||||
|
appendix = "fat"
|
||||||
|
}
|
||||||
|
|
||||||
|
if (testJar) {
|
||||||
|
from sourceSets.test.output
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*===================================
|
||||||
|
* Repositories
|
||||||
|
*===================================*/
|
||||||
|
|
||||||
|
repositories {
|
||||||
|
|
||||||
|
// Prefer the local nexus repository (it may have 3rd party artifacts not found in mavenCentral)
|
||||||
|
maven {
|
||||||
|
url nexusRepository
|
||||||
|
|
||||||
|
if (isSnapshot) {
|
||||||
|
credentials { username
|
||||||
|
password
|
||||||
|
|
||||||
|
username nexusUser
|
||||||
|
password nexusPassword
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Use local maven repository
|
||||||
|
mavenLocal()
|
||||||
|
|
||||||
|
// Use 'maven central' for other dependencies.
|
||||||
|
mavenCentral()
|
||||||
|
}
|
||||||
|
|
||||||
|
task "info" << {
|
||||||
|
println "Project: ${project.name}"
|
||||||
|
println "Description: ${project.description}"
|
||||||
|
println "--------------------------"
|
||||||
|
println "GroupId: $groupId"
|
||||||
|
println "Version: $version (${isSnapshot ? 'snapshot' : 'release'})"
|
||||||
|
println ""
|
||||||
|
}
|
||||||
|
info.description 'Print some information about project parameters'
|
||||||
|
|
||||||
|
|
||||||
|
/*===================================
|
||||||
|
* Publishing
|
||||||
|
*===================================*/
|
||||||
|
|
||||||
|
publishing {
|
||||||
|
publications {
|
||||||
|
mavenJava(MavenPublication) {
|
||||||
|
groupId project.groupId
|
||||||
|
pom.withXml {
|
||||||
|
asNode().appendNode('description', project.description)
|
||||||
|
}
|
||||||
|
from project.components.java
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
repositories {
|
||||||
|
maven {
|
||||||
|
url "https://cs.idc.ac.il/nexus/content/repositories/${project.isSnapshot ? 'snapshots' : 'releases'}"
|
||||||
|
credentials { username
|
||||||
|
password
|
||||||
|
|
||||||
|
username nexusUser
|
||||||
|
password nexusPassword
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
../gradlew
|
|
@ -0,0 +1,4 @@
|
||||||
|
include 'meerkat-common'
|
||||||
|
include 'voting-booth'
|
||||||
|
include 'bulletin-board-server'
|
||||||
|
include 'polling-station'
|
|
@ -0,0 +1,177 @@
|
||||||
|
|
||||||
|
plugins {
|
||||||
|
id "us.kirchmeier.capsule" version "1.0.1"
|
||||||
|
id 'com.google.protobuf' version '0.7.0'
|
||||||
|
}
|
||||||
|
|
||||||
|
apply plugin: 'java'
|
||||||
|
apply plugin: 'eclipse'
|
||||||
|
apply plugin: 'idea'
|
||||||
|
|
||||||
|
apply plugin: 'application'
|
||||||
|
|
||||||
|
apply plugin: 'maven-publish'
|
||||||
|
|
||||||
|
// Is this a snapshot version?
|
||||||
|
ext { isSnapshot = false }
|
||||||
|
|
||||||
|
ext {
|
||||||
|
groupId = 'org.factcenter.meerkat'
|
||||||
|
nexusRepository = "https://cs.idc.ac.il/nexus/content/groups/${isSnapshot ? 'unstable' : 'public'}/"
|
||||||
|
|
||||||
|
// Credentials for IDC nexus repositories (needed only for using unstable repositories and publishing)
|
||||||
|
// Should be set in ${HOME}/.gradle/gradle.properties
|
||||||
|
nexusUser = project.hasProperty('nexusUser') ? project.property('nexusUser') : ""
|
||||||
|
nexusPassword = project.hasProperty('nexusPassword') ? project.property('nexusPassword') : ""
|
||||||
|
}
|
||||||
|
|
||||||
|
description = "TODO: Add a description"
|
||||||
|
|
||||||
|
// Your project version
|
||||||
|
version = "0.0"
|
||||||
|
|
||||||
|
version += "${isSnapshot ? '-SNAPSHOT' : ''}"
|
||||||
|
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
// Meerkat common
|
||||||
|
compile project(':meerkat-common')
|
||||||
|
|
||||||
|
// Logging
|
||||||
|
compile 'org.slf4j:slf4j-api:1.7.7'
|
||||||
|
runtime 'ch.qos.logback:logback-classic:1.1.2'
|
||||||
|
runtime 'ch.qos.logback:logback-core:1.1.2'
|
||||||
|
|
||||||
|
// Google protobufs
|
||||||
|
compile 'com.google.protobuf:protobuf-java:3.+'
|
||||||
|
|
||||||
|
testCompile 'junit:junit:4.+'
|
||||||
|
|
||||||
|
runtime 'org.codehaus.groovy:groovy:2.4.+'
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*==== You probably don't have to edit below this line =======*/
|
||||||
|
|
||||||
|
protobuf {
|
||||||
|
// Configure the protoc executable
|
||||||
|
protoc {
|
||||||
|
// Download from repositories
|
||||||
|
artifact = 'com.google.protobuf:protoc:3.+'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
idea {
|
||||||
|
module {
|
||||||
|
// add protobuf generated sources to generated source dir.
|
||||||
|
sourceDirs += file(protobuf.generatedFilesBaseDir)
|
||||||
|
generatedSourceDirs += file(protobuf.generatedFilesBaseDir)
|
||||||
|
|
||||||
|
// Don't exclude build directory
|
||||||
|
excludeDirs -= file(buildDir)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*===================================
|
||||||
|
* "Fat" Build targets
|
||||||
|
*===================================*/
|
||||||
|
|
||||||
|
if (project.hasProperty('mainClassName') && (mainClassName != null)) {
|
||||||
|
|
||||||
|
task mavenCapsule(type: MavenCapsule) {
|
||||||
|
description = "Generate a capsule jar that automatically downloads and caches dependencies when run."
|
||||||
|
applicationClass mainClassName
|
||||||
|
destinationDir = buildDir
|
||||||
|
}
|
||||||
|
|
||||||
|
task fatCapsule(type: FatCapsule) {
|
||||||
|
description = "Generate a single capsule jar containing everything. Use -Pfatmain=... to override main class"
|
||||||
|
|
||||||
|
destinationDir = buildDir
|
||||||
|
|
||||||
|
def fatMain = hasProperty('fatmain') ? fatmain : mainClassName
|
||||||
|
|
||||||
|
applicationClass fatMain
|
||||||
|
|
||||||
|
def testJar = hasProperty('test')
|
||||||
|
|
||||||
|
if (hasProperty('fatmain')) {
|
||||||
|
appendix = "fat-${fatMain}"
|
||||||
|
} else {
|
||||||
|
appendix = "fat"
|
||||||
|
}
|
||||||
|
|
||||||
|
if (testJar) {
|
||||||
|
from sourceSets.test.output
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*===================================
|
||||||
|
* Repositories
|
||||||
|
*===================================*/
|
||||||
|
|
||||||
|
repositories {
|
||||||
|
|
||||||
|
// Prefer the local nexus repository (it may have 3rd party artifacts not found in mavenCentral)
|
||||||
|
maven {
|
||||||
|
url nexusRepository
|
||||||
|
|
||||||
|
if (isSnapshot) {
|
||||||
|
credentials { username
|
||||||
|
password
|
||||||
|
|
||||||
|
username nexusUser
|
||||||
|
password nexusPassword
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Use local maven repository
|
||||||
|
mavenLocal()
|
||||||
|
|
||||||
|
// Use 'maven central' for other dependencies.
|
||||||
|
mavenCentral()
|
||||||
|
}
|
||||||
|
|
||||||
|
task "info" << {
|
||||||
|
println "Project: ${project.name}"
|
||||||
|
println "Description: ${project.description}"
|
||||||
|
println "--------------------------"
|
||||||
|
println "GroupId: $groupId"
|
||||||
|
println "Version: $version (${isSnapshot ? 'snapshot' : 'release'})"
|
||||||
|
println ""
|
||||||
|
}
|
||||||
|
info.description 'Print some information about project parameters'
|
||||||
|
|
||||||
|
|
||||||
|
/*===================================
|
||||||
|
* Publishing
|
||||||
|
*===================================*/
|
||||||
|
|
||||||
|
publishing {
|
||||||
|
publications {
|
||||||
|
mavenJava(MavenPublication) {
|
||||||
|
groupId project.groupId
|
||||||
|
pom.withXml {
|
||||||
|
asNode().appendNode('description', project.description)
|
||||||
|
}
|
||||||
|
from project.components.java
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
repositories {
|
||||||
|
maven {
|
||||||
|
url "https://cs.idc.ac.il/nexus/content/repositories/${project.isSnapshot ? 'snapshots' : 'releases'}"
|
||||||
|
credentials { username
|
||||||
|
password
|
||||||
|
|
||||||
|
username nexusUser
|
||||||
|
password nexusPassword
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
../gradlew
|
Loading…
Reference in New Issue