1 Star 0 Fork 111

emptyfs / noark3

forked from 小流氓 / noark3 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
build.gradle 5.56 KB
一键复制 编辑 原始数据 按行查看 历史
小流氓 提交于 2023-04-06 14:32 . 发布3.4.7
subprojects {
apply plugin: 'java-library'
apply plugin: 'maven'
apply plugin: 'signing'
apply plugin: 'jacoco'
group = 'xyz.noark'
version = '3.4.7.Final'
sourceCompatibility = 1.8
targetCompatibility = 1.8
[compileJava, compileTestJava]*.options*.encoding = 'UTF-8'
repositories {
maven { url 'http://maven.aliyun.com/nexus/content/groups/public' }
mavenCentral()
}
dependencies {
testImplementation 'junit:junit:4.12'
testImplementation 'org.junit.jupiter:junit-jupiter:5.9.0'
testImplementation 'org.junit.jupiter:junit-jupiter-engine:5.9.0'
}
jar {
manifest.attributes provider: '小流氓'
manifest.attributes["Created-By"] = "${System.getProperty("java.version")} (${System.getProperty("java.specification.vendor")})"
manifest.attributes["Implementation-Title"] = project.name
manifest.attributes["Implementation-Version"] = project.version
}
javadoc {
options{
encoding "UTF-8"
charSet 'UTF-8'
author true
version true
links "http://docs.oracle.com/javase/8/docs/api/"
}
}
ext."signing.keyId"='15567893'
ext."signing.password"=System.getenv('SIGNING_PASSWORD')
ext."signing.secretKeyRingFile"=System.getenv('SIGNING_SECRETKEYRINGFILE')
signing {
sign configurations.archives
}
uploadArchives {
repositories {
mavenDeployer {
beforeDeployment { deployment -> signing.signPom(deployment) }
repository(url: "https://oss.sonatype.org/service/local/staging/deploy/maven2/") {
authentication(userName: System.getenv('OSSRH_USER'), password: System.getenv('OSSRH_PASSWORD'))
}
//快照版本
snapshotRepository(url: "https://oss.sonatype.org/content/repositories/snapshots") {
authentication(userName: System.getenv('OSSRH_USER'), password: System.getenv('OSSRH_PASSWORD'))
}
pom.project {
groupId project.group
artifactId project.name
version project.version
name project.name
description 'This is a game server framework.'
url 'https://noark.xyz'
packaging 'jar'
scm {
connection 'scm:git:git@gitee.com:xiaoe/noark3.git'
developerConnection 'scm:git:git@gitee.com:xiaoe/noark3.git'
url 'https://gitee.com/xiaoe/noark3/'
}
licenses {
license {
name '木兰宽松许可证, 第1版'
url 'http://license.coscl.org.cn/MulanPSL'
distribution 'repo'
}
}
developers {
developer {
id 'xiaoe'
name '小流氓'
email '176543888@qq.com'
url "http://blog.noark.xyz"
}
}
}.writeTo("$buildDir/poms/pom.xml");
}
}
}
task sourceJar(type: Jar) {
from sourceSets.main.allJava
classifier = 'sources'
}
task javadocJar(type: Jar) {
from javadoc
classifier = 'javadoc'
}
artifacts {
archives sourceJar
archives javadocJar
}
task fixpom {
doLast {// 把依赖修一下
def String pomPath = "$buildDir/poms/pom.xml";
def pomRoot = new XmlParser().parse(file(pomPath))
pomRoot.remove(pomRoot.get("groupId"));
// 添加Parent
def parent = pomRoot.appendNode("parent");
parent.appendNode("groupId", "xyz.noark");
parent.appendNode("artifactId", "noark-parent");
parent.appendNode("version", version);
def pomDependencies = pomRoot.dependencies.first();
pomDependencies.dependency.each{dep -> pomDependencies.remove(dep) }
// pom-default.xml 有依赖配置,先去那边拿过来用着
def defaultRoot = new XmlParser().parse(file("$buildDir/poms/pom-default.xml"))
//defaultRoot.dependencies.dependency.each { item -> pomDependencies.append(item)}
defaultRoot.dependencies.dependency.each { item ->
if("runtime".equals(item.get("scope").text())){
def dependencyNode = pomDependencies.appendNode('dependency');
dependencyNode.append(item.get("groupId"));
dependencyNode.append(item.get("artifactId"));
dependencyNode.append(item.get("version"));
dependencyNode.appendNode('scope', "compile");
} else {
pomDependencies.append(item);
}
}
final PrintWriter printWriter = new PrintWriter(new OutputStreamWriter(new FileOutputStream("$buildDir/../pom.xml"), "UTF-8"));
printWriter.format("<?xml version='1.0' encoding='UTF-8'?>%n");
def printer = new XmlNodePrinter(printWriter);
printer.preserveWhitespace = true;
printer.print(pomRoot);
printWriter.flush();
printWriter.close();
}
}
fixpom.dependsOn(install);
build.dependsOn(fixpom);
jacocoTestReport {
reports {
xml.enabled true
html.enabled false
}
}
check.dependsOn jacocoTestReport
}
allprojects {
apply plugin: 'jacoco'
repositories {
maven { url 'http://maven.aliyun.com/nexus/content/groups/public' }
mavenCentral()
jcenter()
}
}
task codeCoverageReport(type: JacocoReport) {
executionData fileTree(project.rootDir.absolutePath).include("**/build/jacoco/*.exec")
subprojects.each {
sourceSets it.sourceSets.main
}
}
codeCoverageReport.dependsOn {
subprojects*.test
}
Java
1
https://gitee.com/emptyfs/noark3.git
git@gitee.com:emptyfs/noark3.git
emptyfs
noark3
noark3
master

搜索帮助