diff --git a/build.gradle b/build.gradle index e3752b5..e893c33 100644 --- a/build.gradle +++ b/build.gradle @@ -1,6 +1,8 @@ plugins { id 'java' id 'java-library' + id 'maven-publish' + id 'signing' } group 'org.bdware.mockjava' @@ -39,8 +41,86 @@ repositories { dependencies { api 'com.google.code.gson:gson:2.8.8' - api 'log4j:log4j:1.2.17' - api 'org.apache.logging.log4j:log4j-core:2.17.0' - api 'org.apache.logging.log4j:log4j-api:2.17.0' + api 'org.apache.logging.log4j:log4j-core:2.17.2' + api 'org.apache.logging.log4j:log4j-api:2.17.2' testImplementation 'junit:junit:4.13.2' } +task classJar(type: Jar, dependsOn: classes) { + classifier = "jar" +} +task sourceJar(type: Jar, dependsOn: classes) { + archiveClassifier = "sources" + classifier = "sources" + from sourceSets.main.allSource +} +tasks.withType(Javadoc) { + options.addStringOption('Xdoclint:none', '-quiet') +} + +task javadocJar(type: Jar, dependsOn: javadoc) { + archiveClassifier = 'javadoc' + classifier = "javadoc" + exclude { + details -> details.file.getAbsolutePath().contains("/gm/") + } + from javadoc.destinationDir +} + + +publishing { + publications { + mavenJava(MavenPublication) { + groupId project.group + artifactId "mockjava" + version "${version}" + from components.java + artifact sourceJar + artifact javadocJar + artifact classJar + pom { + name = "bdware-mockjava" + description = "mockjava" + url = "https://gitee.com/BDWare/MockJava" + licenses { + license { + name = "Mulan PSL v2" + url = "http://license.coscl.org.cn/MulanPSL2" + } + } + developers { + developer { + id = "dataware" + email = "caihq@pku.edu.cn" + } + } + scm { + connection = "scm:git:https://gitee.com/BDWare/MockJava.git" + developerConnection = "scm:git:https://gitee.com/BDWare/MockJava.git" + url = "https://gitee.com/BDWare/MockJava" + } + } + + } + } + repositories { + maven { + name 'bdwareSnapshotRepository' + url 'https://oss.sonatype.org/content/repositories/snapshots' + credentials { + username = "${NEXUS_USERNAME}" + password = "${NEXUS_PASSWORD}" + } + } + maven { + name 'bdwareRepository' + url 'https://oss.sonatype.org/service/local/staging/deploy/maven2' + credentials { + username = "${NEXUS_USERNAME}" + password = "${NEXUS_PASSWORD}" + } + } + } +} +signing { + sign publishing.publications.mavenJava +} \ No newline at end of file