Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit c406d7a

Browse files
committed
Now able to release to sonatype OSS repository.
1 parent ffbfd3a commit c406d7a

File tree

1 file changed

+44
-74
lines changed

1 file changed

+44
-74
lines changed

build.gradle

Lines changed: 44 additions & 74 deletions
Original file line numberDiff line numberDiff line change
@@ -18,38 +18,38 @@ import org.gradle.plugins.signing.Sign
1818

1919
group = 'com.macasaet.lambda'
2020
ext.archivesBaseName = 'fluent-lambda'
21-
version = '0.0.3-SNAPSHOT'
21+
version = '0.0.3'
2222
ext.isReleaseVersion = !version.endsWith( 'SNAPSHOT' )
2323
project.ext.sourceCompatibility = 1.5
2424

25+
buildscript {
26+
repositories {
27+
jcenter()
28+
}
29+
30+
dependencies {
31+
classpath 'org.gradle.api.plugins:gradle-nexus-plugin:0.7'
32+
}
33+
}
34+
2535
gradle.taskGraph.whenReady {
2636
taskGraph ->
2737
if( isReleaseVersion )
2838
{
29-
println "Release version, prompting for passwords."
3039
Console console = System.console()
3140
if( taskGraph.allTasks.any { it instanceof Sign } )
3241
{
33-
println "Prompting for PGP password"
3442
def password =
3543
console.readPassword( "\n\nPGP Password for Private Key " + ext."signing.keyId" + ": " )
3644
allprojects { ext."signing.password" = password }
3745
}
38-
/*
39-
if( taskGraph.hasTask( uploadArchives ) )
40-
{
41-
println "Prompting for Repo password"
42-
def password =
43-
console.readPassword( "Repository password for " + ext."ossrhUsername" + ": " )
44-
allprojects { ext."ossrhPassword" = password }
45-
}
46-
*/
4746
}
4847
}
4948

5049
apply plugin: 'java'
5150
apply plugin: 'maven'
5251
apply plugin: 'signing'
52+
apply plugin: 'nexus'
5353

5454
repositories {
5555
mavenCentral()
@@ -79,75 +79,45 @@ task writeNewPom << {
7979
}.writeTo( "${buildDir/newpom.xml}" )
8080
}
8181

82-
task javadocJar( type: Jar, dependsOn: javadoc ) {
83-
classifier = 'javadoc'
84-
from 'build/docs/javadoc'
85-
}
86-
87-
task sourcesJar( type: Jar ) {
88-
from sourceSets.main.allSource
89-
classifier = 'sources'
90-
}
91-
92-
artifacts {
93-
archives jar
94-
archives javadocJar
95-
archives sourcesJar
96-
}
97-
98-
signing {
99-
required { isReleaseVersion && gradle.taskGraph.hasTask( 'uploadArchives' ) }
100-
sign configurations.archives
101-
}
102-
103-
uploadArchives.doFirst {
104-
def ossrhPassword =
105-
System.console().readPassword( "\n\nRepository password for " + ossrhUsername + ": " )
106-
repositories.mavenDeployer.repository( url: "https://oss.sonatype.org/service/local/staging/deploy/maven2/" ) {
107-
authentication( userName: ossrhUsername, password: ossrhPassword )
108-
}
109-
repositories.mavenDeployer.snapshotRepository( url: "https://oss.sonatype.org/content/repositories/snapshots/" ) {
110-
authentication( userName: ossrhUsername, password: ossrhPassword )
111-
}
112-
}
113-
uploadArchives {
114-
onlyIf { isReleaseVersion }
115-
repositories {
116-
mavenDeployer {
117-
118-
beforeDeployment { MavenDeployment deployment -> signing.signPom( deployment ) }
119-
120-
pom.project {
121-
name 'Fluent Lambda'
122-
packaging 'jar'
123-
artifactId archivesBaseName
124-
description ''
125-
url 'https://github.com/l0s/fluent-lambda'
126-
127-
scm {
128-
connection 'scm:[email protected]:l0s/fluent-lambda.git'
129-
developerConnection 'scm:[email protected]:l0s/fluent-lambda.git'
130-
url 'https://github.com/l0s/fluent-lambda'
131-
}
82+
modifyPom {
83+
project {
84+
name 'Fluent Lambda'
85+
packaging 'jar'
86+
artifactId archivesBaseName
87+
description 'Fluent interfaces for creating lambda expressions in Java'
88+
url 'https://github.com/l0s/fluent-lambda'
89+
90+
scm {
91+
connection 'scm:[email protected]:l0s/fluent-lambda.git'
92+
developerConnection 'scm:[email protected]:l0s/fluent-lambda.git'
93+
url 'https://github.com/l0s/fluent-lambda'
94+
}
13295

133-
licenses {
134-
license {
135-
name 'The Apache Software License, Version 2.0'
136-
url 'http://www.apache.org/licenses/LICENSE-2.0.txt'
137-
}
138-
}
96+
licenses {
97+
license {
98+
name 'The Apache Software License, Version 2.0'
99+
url 'http://www.apache.org/licenses/LICENSE-2.0.txt'
100+
}
101+
}
139102

140-
developers {
141-
developer {
142-
id 'carlos'
143-
name 'Carlos Macasaet'
144-
}
145-
}
103+
developers {
104+
developer {
105+
id 'l0s'
106+
name 'Carlos Macasaet'
146107
}
147108
}
148109
}
149110
}
150111

112+
nexus {
113+
attachSources = true
114+
attachTests = false
115+
attachJavadoc = true
116+
sign = true
117+
repositoryUrl = 'https://oss.sonatype.org/service/local/staging/deploy/maven2/'
118+
snapshotRepositoryUrl = 'https://oss.sonatype.org/content/repositories/snapshots/'
119+
}
120+
151121
dependencies {
152122
compile group: 'com.google.guava', name: 'guava', version: '10.0'
153123
compile group: 'cglib', name: 'cglib-nodep', version: '2.2.2'

0 commit comments

Comments
 (0)