forked from spring-projects/spring-batch
-
Notifications
You must be signed in to change notification settings - Fork 0
/
publish-maven.gradle
90 lines (83 loc) · 1.98 KB
/
publish-maven.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
apply plugin: "propdeps-maven"
install {
repositories.mavenInstaller {
customizePom(pom, project)
}
}
def customizePom(pom, gradleProject) {
pom.whenConfigured { generatedPom ->
// eliminate test-scoped dependencies (no need in maven central poms)
generatedPom.dependencies.removeAll { dep ->
dep.scope == 'test'
}
// sort to make pom dependencies order consistent to ease comparison of older poms
generatedPom.dependencies = generatedPom.dependencies.sort { dep ->
"$dep.scope:$dep.groupId:$dep.artifactId"
}
// add all items necessary for maven central publication
generatedPom.project {
name = gradleProject.description
description = gradleProject.description
url = linkHomepage
organization {
name = 'Spring'
url = 'http://spring.io'
}
licenses {
license {
name 'The Apache Software License, Version 2.0'
url 'http://www.apache.org/licenses/LICENSE-2.0.txt'
distribution 'repo'
}
}
scm {
url = linkScmUrl
connection = 'scm:git:' + linkScmConnection
developerConnection = 'scm:git:' + linkScmDevConnection
}
developers {
developer {
id = 'dsyer'
name = 'Dave Syer'
email = '[email protected]'
}
developer {
id = 'nebhale'
name = 'Ben Hale'
email = '[email protected]'
}
developer {
id = 'lward'
name = 'Lucas Ward'
email = '[email protected]'
}
developer {
id = 'robokaso'
name = 'Robert Kasanicky'
email = '[email protected]'
}
developer {
id = 'trisberg'
name = 'Thomas Risberg'
email = '[email protected]'
}
developer {
id = 'dhgarrette'
name = 'Dan Garrette'
email = '[email protected]'
}
developer {
id = 'mminella'
name = 'Michael Minella'
email = '[email protected]'
roles = ["project lead"]
}
developer {
id = 'chrisjs'
name = 'Chris Schaefer'
email = '[email protected]'
}
}
}
}
}