-
Notifications
You must be signed in to change notification settings - Fork 9
/
build.gradle
109 lines (89 loc) · 3.41 KB
/
build.gradle
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
///////////////////////////////////////////////////////////////////////////////
//
// Build Script for building JavaPOS Contracts Library
//
// Author: denis.kuniss@wincor-nixdorf.com (2016)
//
///////////////////////////////////////////////////////////////////////////////
plugins {
id 'com.gradle.build-scan' version '1.9'
id 'java'
id 'eclipse'
// id 'maven' // comment this in and the next line out for populating to a local Maven repository for testing purposes
id 'com.github.oehme.sobula.bintray-release' version '0.6.7'
}
ext.githubProjectUrl = 'https://github.com/JavaPOSWorkingGroup/javapos-contracts'
ext.travisProjectUrl = 'https://travis-ci.org/JavaPOSWorkingGroup/javapos-contracts'
buildScan {
licenseAgreementUrl = 'https://gradle.com/terms-of-service'
licenseAgree = 'yes'
apply from: 'buildScan.gradle'
}
task wrapper(type: Wrapper) {
gradleVersion = '4.1'
}
///////////////////////////////////////////////////////////////////////////////
// Names and Versions
///////////////////////////////////////////////////////////////////////////////
def artifactName = 'javapos-contracts'
def groupId='org.javapos'
def uposVersion = '1.14'
version="${uposVersion}.3" // the last part after dot is the build/release version
///////////////////////////////////////////////////////////////////////////////
// Build Tasks
///////////////////////////////////////////////////////////////////////////////
sourceCompatibility = '1.5' // this defines the lowest JVM version this library may be used with
// this is to request the best matching JDK (currently 1.5) for compiling in Eclipse
// it is recommended to install a JDK which matches best to avoid applying APIs methods and types not available in specified JVM compatibility version
eclipse.classpath {
containers.clear()
containers "org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-$sourceCompatibility"
}
def javaposManifest = manifest {
attributes('Specification-Title': 'UnifiedPOS Standard',
'Specification-Vendor': 'UnifiedPOS Committee',
'Specification-Version': uposVersion,
'Implementation-Title': 'JavaPOS Contracts',
'Implementation-Vendor': 'github.com/JavaPOSWorkingGroup',
'Implementation-Version': version)
}
jar {
baseName = artifactName
manifest = javaposManifest
}
sourceJar {
manifest = javaposManifest
}
///////////////////////////////////////////////////////////////////////////////
// Artifact Upload
///////////////////////////////////////////////////////////////////////////////
if (project.plugins.hasPlugin('com.github.oehme.sobula.bintray-release'))
{ // evaluates only on travis-ci.org for releasing
group = "org.javapos"
description = "JavaPOS Contracts Library"
contacts {
"builder@javapos.org" {
moniker "JavaPOS Working Group"
roles "owner"
github "JavaPOSWorkingGroup"
}
}
bintray.user = "javaposworkinggroup"
bintray.pkg.version.mavenCentralSync.user = "kuniss"
}
if (project.plugins.hasPlugin('maven'))
{ // evaluates only at development environment, not at travis-ci.org
artifacts {
archives jar
}
uploadArchives {
repositories {
mavenDeployer {
repository(url: "file:$localTestFileRepositoryDir")
pom.artifactId = artifactName
pom.groupId = groupId
pom.version = version
}
}
}
}