apply plugin: 'java' apply plugin: 'application' apply plugin: 'maven' apply plugin: 'signing' repositories { jcenter() } dependencies { testImplementation 'junit:junit:4.13.2' } mainClassName = 'com.webcodepro.shrinkit.NufxScan' jar { manifest { attributes( 'Main-Class': mainClassName, 'Implementation-Title': 'ShrinkItArchive', 'Implementation-Version': archiveVersion ) } } javadoc { options.addStringOption('Xdoclint:none', '-quiet') } task javadocJar(type: Jar) { classifier = 'javadoc' from javadoc } task sourcesJar(type: Jar) { classifier = 'sources' from sourceSets.main.allSource } artifacts { archives javadocJar, sourcesJar } signing { // Only sign if we're uploading... required { gradle.taskGraph.hasTask("uploadArchives") } sign configurations.archives } uploadArchives { repositories { mavenDeployer { beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) } repository(url: "https://oss.sonatype.org/service/local/staging/deploy/maven2/") { authentication(userName: findProperty('ossrhUsername'), password: findProperty('ossrhPassword')) } snapshotRepository(url: "https://oss.sonatype.org/content/repositories/snapshots/") { authentication(userName: findProperty('ossrhUsername'), password: findProperty('ossrhPassword')) } pom.project { name archivesBaseName packaging 'jar' description 'A Java library for managing Apple II ShrinkIt archives.' url 'https://applecommander.github.io/' scm { url 'https://github.com/AppleCommander/ShrinkItArchive' } licenses { license { name 'The GNU General Public License (GPL) Version 2, June 1991' url 'https://www.gnu.org/licenses/gpl-2.0.html' } } developers { developer { id 'robgreene' email 'robgreene@gmail.com' } } } } } }