build: Changed toolchain to gradle.
This commit is contained in:
@@ -0,0 +1,66 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 2023 CodeCraftersCN.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
*
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
val projectUrl by extra("https://codecrafters.org.cn/JDevKit")
|
||||||
|
val projectGithubUrl by extra("https://github.com/CodeCraftersCN/JDevKit")
|
||||||
|
val globalGroupId by extra("cn.org.codecrafters")
|
||||||
|
val globalVersion by extra("1.2.3")
|
||||||
|
val licenseName by extra("The Apache License, Version 2.0")
|
||||||
|
val licenseUrl by extra("https://www.apache.org/licenses/LICENSE-2.0.txt")
|
||||||
|
|
||||||
|
val logbackVersion: String by project
|
||||||
|
val junitVersion: String by project
|
||||||
|
val slf4jVersion: String by project
|
||||||
|
val lombokVersion: String by project
|
||||||
|
val jacksonVersion: String by project
|
||||||
|
val javaJwtVersion: String by project
|
||||||
|
val jjwtVersion: String by project
|
||||||
|
val okhttpVersion: String by project
|
||||||
|
val springVersion: String by project
|
||||||
|
val springBootVersion: String by project
|
||||||
|
|
||||||
|
subprojects {
|
||||||
|
apply(plugin = "java")
|
||||||
|
apply(plugin = "java-library")
|
||||||
|
apply(plugin = "maven-publish")
|
||||||
|
apply(plugin = "signing")
|
||||||
|
|
||||||
|
val implementation by configurations
|
||||||
|
val testImplementation by configurations
|
||||||
|
val compileOnly by configurations
|
||||||
|
val annotationProcessor by configurations
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
compileOnly("org.slf4j:slf4j-api:$slf4jVersion")
|
||||||
|
compileOnly("org.projectlombok:lombok:$lombokVersion")
|
||||||
|
implementation("ch.qos.logback:logback-classic:$logbackVersion")
|
||||||
|
annotationProcessor("org.slf4j:slf4j-api:$slf4jVersion")
|
||||||
|
annotationProcessor("org.projectlombok:lombok:$lombokVersion")
|
||||||
|
testImplementation("org.junit.jupiter:junit-jupiter:$junitVersion")
|
||||||
|
}
|
||||||
|
|
||||||
|
repositories {
|
||||||
|
mavenLocal()
|
||||||
|
maven(url = "https://codecrafters.coding.net/public-artifacts/base/public/packages/")
|
||||||
|
maven(url = "https://maven.proxy.ustclug.org.cn/maven2/")
|
||||||
|
mavenCentral()
|
||||||
|
}
|
||||||
|
|
||||||
|
tasks.withType<JavaCompile> {
|
||||||
|
options.encoding = "UTF-8"
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,95 @@
|
|||||||
|
import java.net.URI
|
||||||
|
|
||||||
|
val globalGroupId: String by rootProject.extra
|
||||||
|
val globalVersion: String by rootProject.extra
|
||||||
|
val projectUrl: String by rootProject.extra
|
||||||
|
val projectGithubUrl: String by rootProject.extra
|
||||||
|
val licenseName: String by rootProject.extra
|
||||||
|
val licenseUrl: String by rootProject.extra
|
||||||
|
|
||||||
|
group = globalGroupId
|
||||||
|
version = globalVersion
|
||||||
|
|
||||||
|
java {
|
||||||
|
sourceCompatibility = JavaVersion.VERSION_17
|
||||||
|
targetCompatibility = JavaVersion.VERSION_17
|
||||||
|
withSourcesJar()
|
||||||
|
withJavadocJar()
|
||||||
|
}
|
||||||
|
|
||||||
|
tasks.test {
|
||||||
|
useJUnitPlatform()
|
||||||
|
}
|
||||||
|
|
||||||
|
publishing {
|
||||||
|
publications {
|
||||||
|
create<MavenPublication>("devkitCore") {
|
||||||
|
groupId = globalGroupId
|
||||||
|
artifactId = "devkit-core"
|
||||||
|
version = globalVersion
|
||||||
|
|
||||||
|
pom {
|
||||||
|
name = "DevKit - Core"
|
||||||
|
description = "The core module of JDevKit."
|
||||||
|
url = projectUrl
|
||||||
|
|
||||||
|
licenses {
|
||||||
|
license {
|
||||||
|
name = licenseName
|
||||||
|
url = licenseUrl
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
scm {
|
||||||
|
connection = "scm:git:git://github.com:CodeCraftersCN/JDevKit.git"
|
||||||
|
developerConnection = "scm:git:git://github.com:CodeCraftersCN/JDevKit.git"
|
||||||
|
url = projectGithubUrl
|
||||||
|
}
|
||||||
|
|
||||||
|
developers {
|
||||||
|
developer {
|
||||||
|
id = "zihluwang"
|
||||||
|
name = "Zihlu Wang"
|
||||||
|
email = "really@zihlu.wang"
|
||||||
|
timezone = "Asia/Hong_Kong"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
from(components["java"])
|
||||||
|
|
||||||
|
signing {
|
||||||
|
sign(publishing.publications["devkitCore"])
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
repositories {
|
||||||
|
maven {
|
||||||
|
name = "sonatypeNexus"
|
||||||
|
url = URI(providers.gradleProperty("repo.maven-central.username").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.maven-central.username").get()
|
||||||
|
password = providers.gradleProperty("repo.maven-central.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
maven {
|
||||||
|
name = "codingNexus"
|
||||||
|
url = URI(providers.gradleProperty("repo.coding.host").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.coding.username").get()
|
||||||
|
password = providers.gradleProperty("repo.coding.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
maven {
|
||||||
|
name = "githubPackages"
|
||||||
|
url = URI(providers.gradleProperty("repo.github.host").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.github.username").get()
|
||||||
|
password = providers.gradleProperty("repo.github.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,37 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!--
|
|
||||||
~ Copyright (C) 2023 CodeCraftersCN.
|
|
||||||
~
|
|
||||||
~ Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
~ you may not use this file except in compliance with the License.
|
|
||||||
~ You may obtain a copy of the License at
|
|
||||||
~
|
|
||||||
~ http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
~
|
|
||||||
~ Unless required by applicable law or agreed to in writing, software
|
|
||||||
~ distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
~
|
|
||||||
~ See the License for the specific language governing permissions and
|
|
||||||
~ limitations under the License.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
|
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
||||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
|
||||||
<parent>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>jdevkit</artifactId>
|
|
||||||
<version>1.2.2</version>
|
|
||||||
</parent>
|
|
||||||
|
|
||||||
<artifactId>devkit-core</artifactId>
|
|
||||||
|
|
||||||
<properties>
|
|
||||||
<maven.compiler.source>17</maven.compiler.source>
|
|
||||||
<maven.compiler.target>17</maven.compiler.target>
|
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
||||||
</properties>
|
|
||||||
|
|
||||||
</project>
|
|
||||||
@@ -0,0 +1,99 @@
|
|||||||
|
import java.net.URI
|
||||||
|
|
||||||
|
val globalGroupId: String by rootProject.extra
|
||||||
|
val globalVersion: String by rootProject.extra
|
||||||
|
val projectUrl: String by rootProject.extra
|
||||||
|
val projectGithubUrl: String by rootProject.extra
|
||||||
|
val licenseName: String by rootProject.extra
|
||||||
|
val licenseUrl: String by rootProject.extra
|
||||||
|
|
||||||
|
group = globalGroupId
|
||||||
|
version = globalVersion
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
implementation(project(":devkit-core"))
|
||||||
|
}
|
||||||
|
|
||||||
|
java {
|
||||||
|
sourceCompatibility = JavaVersion.VERSION_17
|
||||||
|
targetCompatibility = JavaVersion.VERSION_17
|
||||||
|
withSourcesJar()
|
||||||
|
withJavadocJar()
|
||||||
|
}
|
||||||
|
|
||||||
|
tasks.test {
|
||||||
|
useJUnitPlatform()
|
||||||
|
}
|
||||||
|
|
||||||
|
publishing {
|
||||||
|
publications {
|
||||||
|
create<MavenPublication>("devkitUtils") {
|
||||||
|
groupId = globalGroupId
|
||||||
|
artifactId = "devkit-utils"
|
||||||
|
version = globalVersion
|
||||||
|
|
||||||
|
pom {
|
||||||
|
name = "DevKit - Utils"
|
||||||
|
description = "The utils module of JDevKit."
|
||||||
|
url = projectUrl
|
||||||
|
|
||||||
|
licenses {
|
||||||
|
license {
|
||||||
|
name = licenseName
|
||||||
|
url = licenseUrl
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
scm {
|
||||||
|
connection = "scm:git:git://github.com:CodeCraftersCN/JDevKit.git"
|
||||||
|
developerConnection = "scm:git:git://github.com:CodeCraftersCN/JDevKit.git"
|
||||||
|
url = projectGithubUrl
|
||||||
|
}
|
||||||
|
|
||||||
|
developers {
|
||||||
|
developer {
|
||||||
|
id = "zihluwang"
|
||||||
|
name = "Zihlu Wang"
|
||||||
|
email = "really@zihlu.wang"
|
||||||
|
timezone = "Asia/Hong_Kong"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
from(components["java"])
|
||||||
|
|
||||||
|
signing {
|
||||||
|
sign(publishing.publications["devkitUtils"])
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
repositories {
|
||||||
|
maven {
|
||||||
|
name = "sonatypeNexus"
|
||||||
|
url = URI(providers.gradleProperty("repo.maven-central.host").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.maven-central.username").get()
|
||||||
|
password = providers.gradleProperty("repo.maven-central.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
maven {
|
||||||
|
name = "codingNexus"
|
||||||
|
url = URI(providers.gradleProperty("repo.coding.host").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.coding.username").get()
|
||||||
|
password = providers.gradleProperty("repo.coding.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
maven {
|
||||||
|
name = "githubPackages"
|
||||||
|
url = URI(providers.gradleProperty("repo.github.host").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.github.username").get()
|
||||||
|
password = providers.gradleProperty("repo.github.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,27 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
|
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
||||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
|
||||||
<parent>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>jdevkit</artifactId>
|
|
||||||
<version>1.2.2</version>
|
|
||||||
</parent>
|
|
||||||
|
|
||||||
<artifactId>devkit-utils</artifactId>
|
|
||||||
|
|
||||||
<properties>
|
|
||||||
<maven.compiler.source>17</maven.compiler.source>
|
|
||||||
<maven.compiler.target>17</maven.compiler.target>
|
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
||||||
</properties>
|
|
||||||
|
|
||||||
<dependencies>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>devkit-core</artifactId>
|
|
||||||
</dependency>
|
|
||||||
</dependencies>
|
|
||||||
|
|
||||||
</project>
|
|
||||||
@@ -0,0 +1,27 @@
|
|||||||
|
#
|
||||||
|
# Copyright (C) 2023 CodeCraftersCN.
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
#
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
logbackVersion=1.4.13
|
||||||
|
junitVersion=5.10.1
|
||||||
|
slf4jVersion=2.0.9
|
||||||
|
lombokVersion=1.18.30
|
||||||
|
jacksonVersion=2.16.0
|
||||||
|
javaJwtVersion=4.4.0
|
||||||
|
jjwtVersion=0.12.3
|
||||||
|
okhttpVersion=4.12.0
|
||||||
|
springVersion=6.1.1
|
||||||
|
springBootVersion=3.2.0
|
||||||
+23
@@ -0,0 +1,23 @@
|
|||||||
|
#
|
||||||
|
# Copyright (C) 2023 CodeCraftersCN.
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
#
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
# Wed 31 Jan 00:00:00 HKT 2024
|
||||||
|
distributionBase=GRADLE_USER_HOME
|
||||||
|
distributionPath=wrapper/dists
|
||||||
|
distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip
|
||||||
|
zipStoreBase=GRADLE_USER_HOME
|
||||||
|
zipStorePath=wrapper/dists
|
||||||
Vendored
@@ -0,0 +1,99 @@
|
|||||||
|
import java.net.URI
|
||||||
|
|
||||||
|
val globalGroupId: String by rootProject.extra
|
||||||
|
val globalVersion: String by rootProject.extra
|
||||||
|
val projectUrl: String by rootProject.extra
|
||||||
|
val projectGithubUrl: String by rootProject.extra
|
||||||
|
val licenseName: String by rootProject.extra
|
||||||
|
val licenseUrl: String by rootProject.extra
|
||||||
|
|
||||||
|
group = globalGroupId
|
||||||
|
version = globalVersion
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
implementation(project(":devkit-core"))
|
||||||
|
}
|
||||||
|
|
||||||
|
java {
|
||||||
|
sourceCompatibility = JavaVersion.VERSION_17
|
||||||
|
targetCompatibility = JavaVersion.VERSION_17
|
||||||
|
withSourcesJar()
|
||||||
|
withJavadocJar()
|
||||||
|
}
|
||||||
|
|
||||||
|
tasks.test {
|
||||||
|
useJUnitPlatform()
|
||||||
|
}
|
||||||
|
|
||||||
|
publishing {
|
||||||
|
publications {
|
||||||
|
create<MavenPublication>("guid") {
|
||||||
|
groupId = globalGroupId
|
||||||
|
artifactId = "guid"
|
||||||
|
version = globalVersion
|
||||||
|
|
||||||
|
pom {
|
||||||
|
name = "DevKit - GUID"
|
||||||
|
description = "The guid module of JDevKit."
|
||||||
|
url = projectUrl
|
||||||
|
|
||||||
|
licenses {
|
||||||
|
license {
|
||||||
|
name = licenseName
|
||||||
|
url = licenseUrl
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
scm {
|
||||||
|
connection = "scm:git:git://github.com:CodeCraftersCN/JDevKit.git"
|
||||||
|
developerConnection = "scm:git:git://github.com:CodeCraftersCN/JDevKit.git"
|
||||||
|
url = projectGithubUrl
|
||||||
|
}
|
||||||
|
|
||||||
|
developers {
|
||||||
|
developer {
|
||||||
|
id = "zihluwang"
|
||||||
|
name = "Zihlu Wang"
|
||||||
|
email = "really@zihlu.wang"
|
||||||
|
timezone = "Asia/Hong_Kong"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
from(components["java"])
|
||||||
|
|
||||||
|
signing {
|
||||||
|
sign(publishing.publications["guid"])
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
repositories {
|
||||||
|
maven {
|
||||||
|
name = "sonatypeNexus"
|
||||||
|
url = URI(providers.gradleProperty("repo.maven-central.host").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.maven-central.username").get()
|
||||||
|
password = providers.gradleProperty("repo.maven-central.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
maven {
|
||||||
|
name = "codingNexus"
|
||||||
|
url = URI(providers.gradleProperty("repo.coding.host").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.coding.username").get()
|
||||||
|
password = providers.gradleProperty("repo.coding.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
maven {
|
||||||
|
name = "githubPackages"
|
||||||
|
url = URI(providers.gradleProperty("repo.github.host").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.github.username").get()
|
||||||
|
password = providers.gradleProperty("repo.github.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,44 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!--
|
|
||||||
~ Copyright (C) 2023 CodeCraftersCN.
|
|
||||||
~
|
|
||||||
~ Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
~ you may not use this file except in compliance with the License.
|
|
||||||
~ You may obtain a copy of the License at
|
|
||||||
~
|
|
||||||
~ http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
~
|
|
||||||
~ Unless required by applicable law or agreed to in writing, software
|
|
||||||
~ distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
~
|
|
||||||
~ See the License for the specific language governing permissions and
|
|
||||||
~ limitations under the License.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
|
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
||||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
|
||||||
<parent>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>jdevkit</artifactId>
|
|
||||||
<version>1.2.2</version>
|
|
||||||
</parent>
|
|
||||||
|
|
||||||
<artifactId>guid</artifactId>
|
|
||||||
|
|
||||||
<properties>
|
|
||||||
<maven.compiler.source>17</maven.compiler.source>
|
|
||||||
<maven.compiler.target>17</maven.compiler.target>
|
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
||||||
</properties>
|
|
||||||
|
|
||||||
<dependencies>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>devkit-core</artifactId>
|
|
||||||
</dependency>
|
|
||||||
</dependencies>
|
|
||||||
|
|
||||||
</project>
|
|
||||||
@@ -1,513 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!--
|
|
||||||
~ Copyright (C) 2023 CodeCraftersCN.
|
|
||||||
~
|
|
||||||
~ Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
~ you may not use this file except in compliance with the License.
|
|
||||||
~ You may obtain a copy of the License at
|
|
||||||
~
|
|
||||||
~ http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
~
|
|
||||||
~ Unless required by applicable law or agreed to in writing, software
|
|
||||||
~ distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
~
|
|
||||||
~ See the License for the specific language governing permissions and
|
|
||||||
~ limitations under the License.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
|
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
||||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
|
||||||
|
|
||||||
<parent>
|
|
||||||
<groupId>org.sonatype.oss</groupId>
|
|
||||||
<artifactId>oss-parent</artifactId>
|
|
||||||
<version>9</version>
|
|
||||||
</parent>
|
|
||||||
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>jdevkit</artifactId>
|
|
||||||
<version>1.2.2</version>
|
|
||||||
<inceptionYear>2023</inceptionYear>
|
|
||||||
|
|
||||||
<packaging>pom</packaging>
|
|
||||||
<modules>
|
|
||||||
<module>devkit-core</module>
|
|
||||||
<module>devkit-utils</module>
|
|
||||||
<module>guid</module>
|
|
||||||
<module>webcal</module>
|
|
||||||
<module>simple-jwt-facade</module>
|
|
||||||
<module>simple-jwt-authzero</module>
|
|
||||||
<module>simple-jwt-jjwt</module>
|
|
||||||
<module>simple-jwt-spring-boot-starter</module>
|
|
||||||
<module>property-guard-spring-boot-starter</module>
|
|
||||||
</modules>
|
|
||||||
|
|
||||||
<organization>
|
|
||||||
<name>CodeCrafters</name>
|
|
||||||
<url>https://codecrafters.org.cn</url>
|
|
||||||
</organization>
|
|
||||||
|
|
||||||
<developers>
|
|
||||||
<developer>
|
|
||||||
<id>zihluwang</id>
|
|
||||||
<name>Zihlu Wang</name>
|
|
||||||
<email>zihlu.wang@codecrafters.org.cn</email>
|
|
||||||
<organization>CodeCraftersCN</organization>
|
|
||||||
<organizationUrl>https://codecrafters.org.cn</organizationUrl>
|
|
||||||
</developer>
|
|
||||||
</developers>
|
|
||||||
|
|
||||||
<licenses>
|
|
||||||
<license>
|
|
||||||
<name>The Apache Software License, Version 2.0</name>
|
|
||||||
<url>https://www.apache.org/licenses/</url>
|
|
||||||
<distribution>repo</distribution>
|
|
||||||
</license>
|
|
||||||
</licenses>
|
|
||||||
|
|
||||||
<scm>
|
|
||||||
<url>https://github.com/CodeCraftersCN/jdevkit</url>
|
|
||||||
<connection>git@github.com:CodeCraftersCN/jdevkit.git</connection>
|
|
||||||
<developerConnection>https://github.com/CodeCraftersCN/jdevkit</developerConnection>
|
|
||||||
</scm>
|
|
||||||
|
|
||||||
<properties>
|
|
||||||
<maven.compiler.source>17</maven.compiler.source>
|
|
||||||
<maven.compiler.target>17</maven.compiler.target>
|
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
||||||
|
|
||||||
<!-- Plugin Versions -->
|
|
||||||
<source-plugin.version>3.3.0</source-plugin.version>
|
|
||||||
<javadoc-plugin.version>3.5.0</javadoc-plugin.version>
|
|
||||||
<gpg-plugin.version>3.1.0</gpg-plugin.version>
|
|
||||||
<jar-plugin.version>3.3.0</jar-plugin.version>
|
|
||||||
|
|
||||||
<!-- Dependency Versions -->
|
|
||||||
<logback.version>1.4.13</logback.version>
|
|
||||||
<junit.version>5.10.0</junit.version>
|
|
||||||
<slf4j-api.version>2.0.9</slf4j-api.version>
|
|
||||||
<lombok.version>1.18.30</lombok.version>
|
|
||||||
<jackson.version>2.15.2</jackson.version>
|
|
||||||
<auth0-jwt.version>4.4.0</auth0-jwt.version>
|
|
||||||
<jjwt-jwt.version>0.11.5</jjwt-jwt.version>
|
|
||||||
<ok-http.version>4.11.0</ok-http.version>
|
|
||||||
|
|
||||||
<!-- Spring Dependency Versions -->
|
|
||||||
<spring.version>6.0.9</spring.version>
|
|
||||||
<spring-boot.version>3.1.0</spring-boot.version>
|
|
||||||
</properties>
|
|
||||||
|
|
||||||
<dependencyManagement>
|
|
||||||
<dependencies>
|
|
||||||
<!-- JUnit 5 -->
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.junit</groupId>
|
|
||||||
<artifactId>junit-bom</artifactId>
|
|
||||||
<version>${junit.version}</version>
|
|
||||||
<type>pom</type>
|
|
||||||
<scope>import</scope>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<!-- Simple Log Facade for java -->
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.slf4j</groupId>
|
|
||||||
<artifactId>slf4j-api</artifactId>
|
|
||||||
<version>${slf4j-api.version}</version>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<!-- Logback -->
|
|
||||||
<dependency>
|
|
||||||
<groupId>ch.qos.logback</groupId>
|
|
||||||
<artifactId>logback-classic</artifactId>
|
|
||||||
<version>${logback.version}</version>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<!-- Lombok -->
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.projectlombok</groupId>
|
|
||||||
<artifactId>lombok</artifactId>
|
|
||||||
<version>${lombok.version}</version>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<!-- Jackson -->
|
|
||||||
<dependency>
|
|
||||||
<groupId>com.fasterxml.jackson.core</groupId>
|
|
||||||
<artifactId>jackson-databind</artifactId>
|
|
||||||
<version>${jackson.version}</version>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<!-- java-jwt -->
|
|
||||||
<dependency>
|
|
||||||
<groupId>com.auth0</groupId>
|
|
||||||
<artifactId>java-jwt</artifactId>
|
|
||||||
<version>${auth0-jwt.version}</version>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<!-- jjwt -->
|
|
||||||
<dependency>
|
|
||||||
<groupId>io.jsonwebtoken</groupId>
|
|
||||||
<artifactId>jjwt-api</artifactId>
|
|
||||||
<version>${jjwt-jwt.version}</version>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>io.jsonwebtoken</groupId>
|
|
||||||
<artifactId>jjwt-impl</artifactId>
|
|
||||||
<version>${jjwt-jwt.version}</version>
|
|
||||||
<scope>runtime</scope>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>io.jsonwebtoken</groupId>
|
|
||||||
<artifactId>jjwt-jackson</artifactId>
|
|
||||||
<version>${jjwt-jwt.version}</version>
|
|
||||||
<scope>runtime</scope>
|
|
||||||
<exclusions>
|
|
||||||
<exclusion>
|
|
||||||
<groupId>com.fasterxml.jackson.core</groupId>
|
|
||||||
<artifactId>jackson-databind</artifactId>
|
|
||||||
</exclusion>
|
|
||||||
</exclusions>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>com.squareup.okhttp3</groupId>
|
|
||||||
<artifactId>okhttp</artifactId>
|
|
||||||
<version>4.11.0</version>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<!-- In-project modules -->
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>devkit-core</artifactId>
|
|
||||||
<version>${project.version}</version>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>guid</artifactId>
|
|
||||||
<version>${project.version}</version>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>devkit-utils</artifactId>
|
|
||||||
<version>${project.version}</version>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>simple-jwt-facade</artifactId>
|
|
||||||
<version>${project.version}</version>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>simple-jwt-authzero</artifactId>
|
|
||||||
<version>${project.version}</version>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>simple-jwt-jjwt</artifactId>
|
|
||||||
<version>${project.version}</version>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<!-- Spring -->
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.springframework.boot</groupId>
|
|
||||||
<artifactId>spring-boot-autoconfigure</artifactId>
|
|
||||||
<version>${spring-boot.version}</version>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.springframework.boot</groupId>
|
|
||||||
<artifactId>spring-boot-starter-logging</artifactId>
|
|
||||||
<version>${spring-boot.version}</version>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.springframework.boot</groupId>
|
|
||||||
<artifactId>spring-boot-configuration-processor</artifactId>
|
|
||||||
<version>${spring-boot.version}</version>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.springframework.boot</groupId>
|
|
||||||
<artifactId>spring-boot-starter-test</artifactId>
|
|
||||||
<scope>test</scope>
|
|
||||||
<version>${spring-boot.version}</version>
|
|
||||||
</dependency>
|
|
||||||
</dependencies>
|
|
||||||
</dependencyManagement>
|
|
||||||
|
|
||||||
<dependencies>
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.junit.jupiter</groupId>
|
|
||||||
<artifactId>junit-jupiter</artifactId>
|
|
||||||
<scope>test</scope>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.slf4j</groupId>
|
|
||||||
<artifactId>slf4j-api</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>ch.qos.logback</groupId>
|
|
||||||
<artifactId>logback-classic</artifactId>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.projectlombok</groupId>
|
|
||||||
<artifactId>lombok</artifactId>
|
|
||||||
</dependency>
|
|
||||||
</dependencies>
|
|
||||||
|
|
||||||
<profiles>
|
|
||||||
<profile>
|
|
||||||
<id>maven-central</id>
|
|
||||||
<build>
|
|
||||||
<plugins>
|
|
||||||
<plugin>
|
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
|
||||||
<artifactId>maven-source-plugin</artifactId>
|
|
||||||
<version>${source-plugin.version}</version>
|
|
||||||
<executions>
|
|
||||||
<execution>
|
|
||||||
<id>attach-sources</id>
|
|
||||||
<goals>
|
|
||||||
<goal>jar</goal>
|
|
||||||
</goals>
|
|
||||||
</execution>
|
|
||||||
</executions>
|
|
||||||
</plugin>
|
|
||||||
<!-- Javadoc -->
|
|
||||||
<plugin>
|
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
|
||||||
<artifactId>maven-javadoc-plugin</artifactId>
|
|
||||||
<version>${javadoc-plugin.version}</version>
|
|
||||||
<executions>
|
|
||||||
<execution>
|
|
||||||
<id>attach-javadocs</id>
|
|
||||||
<goals>
|
|
||||||
<goal>jar</goal>
|
|
||||||
</goals>
|
|
||||||
</execution>
|
|
||||||
</executions>
|
|
||||||
</plugin>
|
|
||||||
<plugin>
|
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
|
||||||
<artifactId>maven-gpg-plugin</artifactId>
|
|
||||||
<version>${gpg-plugin.version}</version>
|
|
||||||
<executions>
|
|
||||||
<execution>
|
|
||||||
<phase>verify</phase>
|
|
||||||
<goals>
|
|
||||||
<goal>sign</goal>
|
|
||||||
</goals>
|
|
||||||
</execution>
|
|
||||||
</executions>
|
|
||||||
</plugin>
|
|
||||||
<plugin>
|
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
|
||||||
<artifactId>maven-jar-plugin</artifactId>
|
|
||||||
<version>${jar-plugin.version}</version>
|
|
||||||
<configuration>
|
|
||||||
<excludes>
|
|
||||||
<exclude>*.xml</exclude>
|
|
||||||
</excludes>
|
|
||||||
</configuration>
|
|
||||||
</plugin>
|
|
||||||
</plugins>
|
|
||||||
</build>
|
|
||||||
<distributionManagement>
|
|
||||||
<snapshotRepository>
|
|
||||||
<id>maven-snapshot</id>
|
|
||||||
<url>https://s01.oss.sonatype.org/content/repositories/snapshots/</url>
|
|
||||||
</snapshotRepository>
|
|
||||||
<repository>
|
|
||||||
<id>maven</id>
|
|
||||||
<url>https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/</url>
|
|
||||||
</repository>
|
|
||||||
</distributionManagement>
|
|
||||||
</profile>
|
|
||||||
|
|
||||||
<profile>
|
|
||||||
<id>github</id>
|
|
||||||
<build>
|
|
||||||
<plugins>
|
|
||||||
<plugin>
|
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
|
||||||
<artifactId>maven-source-plugin</artifactId>
|
|
||||||
<version>${source-plugin.version}</version>
|
|
||||||
<executions>
|
|
||||||
<execution>
|
|
||||||
<id>attach-sources</id>
|
|
||||||
<goals>
|
|
||||||
<goal>jar</goal>
|
|
||||||
</goals>
|
|
||||||
</execution>
|
|
||||||
</executions>
|
|
||||||
</plugin>
|
|
||||||
<!-- Javadoc -->
|
|
||||||
<plugin>
|
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
|
||||||
<artifactId>maven-javadoc-plugin</artifactId>
|
|
||||||
<version>${javadoc-plugin.version}</version>
|
|
||||||
<executions>
|
|
||||||
<execution>
|
|
||||||
<id>attach-javadocs</id>
|
|
||||||
<goals>
|
|
||||||
<goal>jar</goal>
|
|
||||||
</goals>
|
|
||||||
</execution>
|
|
||||||
</executions>
|
|
||||||
</plugin>
|
|
||||||
<plugin>
|
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
|
||||||
<artifactId>maven-gpg-plugin</artifactId>
|
|
||||||
<version>${gpg-plugin.version}</version>
|
|
||||||
<executions>
|
|
||||||
<execution>
|
|
||||||
<phase>verify</phase>
|
|
||||||
<goals>
|
|
||||||
<goal>sign</goal>
|
|
||||||
</goals>
|
|
||||||
</execution>
|
|
||||||
</executions>
|
|
||||||
</plugin>
|
|
||||||
<plugin>
|
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
|
||||||
<artifactId>maven-jar-plugin</artifactId>
|
|
||||||
<version>${jar-plugin.version}</version>
|
|
||||||
<configuration>
|
|
||||||
<excludes>
|
|
||||||
<exclude>*.xml</exclude>
|
|
||||||
</excludes>
|
|
||||||
</configuration>
|
|
||||||
</plugin>
|
|
||||||
</plugins>
|
|
||||||
</build>
|
|
||||||
<distributionManagement>
|
|
||||||
<repository>
|
|
||||||
<id>github</id>
|
|
||||||
<url>https://maven.pkg.github.com/CodeCraftersCN/jdevkit</url>
|
|
||||||
</repository>
|
|
||||||
</distributionManagement>
|
|
||||||
</profile>
|
|
||||||
|
|
||||||
<profile>
|
|
||||||
<id>local</id>
|
|
||||||
<build>
|
|
||||||
<plugins>
|
|
||||||
<plugin>
|
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
|
||||||
<artifactId>maven-source-plugin</artifactId>
|
|
||||||
<version>${source-plugin.version}</version>
|
|
||||||
<executions>
|
|
||||||
<execution>
|
|
||||||
<id>attach-sources</id>
|
|
||||||
<goals>
|
|
||||||
<goal>jar</goal>
|
|
||||||
</goals>
|
|
||||||
</execution>
|
|
||||||
</executions>
|
|
||||||
</plugin>
|
|
||||||
<!-- Javadoc -->
|
|
||||||
<plugin>
|
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
|
||||||
<artifactId>maven-javadoc-plugin</artifactId>
|
|
||||||
<version>${javadoc-plugin.version}</version>
|
|
||||||
<executions>
|
|
||||||
<execution>
|
|
||||||
<id>attach-javadocs</id>
|
|
||||||
<goals>
|
|
||||||
<goal>jar</goal>
|
|
||||||
</goals>
|
|
||||||
</execution>
|
|
||||||
</executions>
|
|
||||||
</plugin>
|
|
||||||
<plugin>
|
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
|
||||||
<artifactId>maven-jar-plugin</artifactId>
|
|
||||||
<version>${jar-plugin.version}</version>
|
|
||||||
<configuration>
|
|
||||||
<excludes>
|
|
||||||
<exclude>*.xml</exclude>
|
|
||||||
</excludes>
|
|
||||||
</configuration>
|
|
||||||
</plugin>
|
|
||||||
</plugins>
|
|
||||||
</build>
|
|
||||||
</profile>
|
|
||||||
|
|
||||||
<profile>
|
|
||||||
<id>coding</id>
|
|
||||||
<build>
|
|
||||||
<plugins>
|
|
||||||
<plugin>
|
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
|
||||||
<artifactId>maven-source-plugin</artifactId>
|
|
||||||
<version>${source-plugin.version}</version>
|
|
||||||
<executions>
|
|
||||||
<execution>
|
|
||||||
<id>attach-sources</id>
|
|
||||||
<goals>
|
|
||||||
<goal>jar</goal>
|
|
||||||
</goals>
|
|
||||||
</execution>
|
|
||||||
</executions>
|
|
||||||
</plugin>
|
|
||||||
<!-- Javadoc -->
|
|
||||||
<plugin>
|
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
|
||||||
<artifactId>maven-javadoc-plugin</artifactId>
|
|
||||||
<version>${javadoc-plugin.version}</version>
|
|
||||||
<executions>
|
|
||||||
<execution>
|
|
||||||
<id>attach-javadocs</id>
|
|
||||||
<goals>
|
|
||||||
<goal>jar</goal>
|
|
||||||
</goals>
|
|
||||||
</execution>
|
|
||||||
</executions>
|
|
||||||
</plugin>
|
|
||||||
<plugin>
|
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
|
||||||
<artifactId>maven-gpg-plugin</artifactId>
|
|
||||||
<version>${gpg-plugin.version}</version>
|
|
||||||
<executions>
|
|
||||||
<execution>
|
|
||||||
<phase>verify</phase>
|
|
||||||
<goals>
|
|
||||||
<goal>sign</goal>
|
|
||||||
</goals>
|
|
||||||
</execution>
|
|
||||||
</executions>
|
|
||||||
</plugin>
|
|
||||||
<plugin>
|
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
|
||||||
<artifactId>maven-jar-plugin</artifactId>
|
|
||||||
<version>${jar-plugin.version}</version>
|
|
||||||
<configuration>
|
|
||||||
<excludes>
|
|
||||||
<exclude>*.xml</exclude>
|
|
||||||
</excludes>
|
|
||||||
</configuration>
|
|
||||||
</plugin>
|
|
||||||
</plugins>
|
|
||||||
</build>
|
|
||||||
<distributionManagement>
|
|
||||||
<repository>
|
|
||||||
<id>codecrafters-general-public</id>
|
|
||||||
<name>public</name>
|
|
||||||
<url>https://codecrafters-maven.pkg.coding.net/repository/general/public/</url>
|
|
||||||
</repository>
|
|
||||||
</distributionManagement>
|
|
||||||
</profile>
|
|
||||||
</profiles>
|
|
||||||
|
|
||||||
</project>
|
|
||||||
@@ -0,0 +1,113 @@
|
|||||||
|
import java.net.URI
|
||||||
|
|
||||||
|
val globalGroupId: String by rootProject.extra
|
||||||
|
val globalVersion: String by rootProject.extra
|
||||||
|
val projectUrl: String by rootProject.extra
|
||||||
|
val projectGithubUrl: String by rootProject.extra
|
||||||
|
val licenseName: String by rootProject.extra
|
||||||
|
val licenseUrl: String by rootProject.extra
|
||||||
|
|
||||||
|
val logbackVersion: String by project
|
||||||
|
val junitVersion: String by project
|
||||||
|
val slf4jVersion: String by project
|
||||||
|
val lombokVersion: String by project
|
||||||
|
val jacksonVersion: String by project
|
||||||
|
val javaJwtVersion: String by project
|
||||||
|
val jjwtVersion: String by project
|
||||||
|
val okhttpVersion: String by project
|
||||||
|
val springVersion: String by project
|
||||||
|
val springBootVersion: String by project
|
||||||
|
|
||||||
|
group = globalGroupId
|
||||||
|
version = globalVersion
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
implementation(project(":devkit-utils"))
|
||||||
|
implementation("org.springframework.boot:spring-boot-autoconfigure:$springBootVersion")
|
||||||
|
implementation("org.springframework.boot:spring-boot-starter-logging:$springBootVersion")
|
||||||
|
implementation("org.springframework.boot:spring-boot-configuration-processor:$springBootVersion")
|
||||||
|
testImplementation("org.springframework.boot:spring-boot-starter-test:$springBootVersion")
|
||||||
|
}
|
||||||
|
|
||||||
|
java {
|
||||||
|
sourceCompatibility = JavaVersion.VERSION_17
|
||||||
|
targetCompatibility = JavaVersion.VERSION_17
|
||||||
|
withSourcesJar()
|
||||||
|
withJavadocJar()
|
||||||
|
}
|
||||||
|
|
||||||
|
tasks.test {
|
||||||
|
useJUnitPlatform()
|
||||||
|
}
|
||||||
|
|
||||||
|
publishing {
|
||||||
|
publications {
|
||||||
|
create<MavenPublication>("propertyGuardSpringBootStarter") {
|
||||||
|
groupId = globalGroupId
|
||||||
|
artifactId = "property-guard-spring-boot-starter"
|
||||||
|
version = globalVersion
|
||||||
|
|
||||||
|
pom {
|
||||||
|
name = "Property Guard Spring Boot Starter"
|
||||||
|
url = projectUrl
|
||||||
|
|
||||||
|
licenses {
|
||||||
|
license {
|
||||||
|
name = licenseName
|
||||||
|
url = licenseUrl
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
scm {
|
||||||
|
connection = "scm:git:git://github.com:CodeCraftersCN/JDevKit.git"
|
||||||
|
developerConnection = "scm:git:git://github.com:CodeCraftersCN/JDevKit.git"
|
||||||
|
url = projectGithubUrl
|
||||||
|
}
|
||||||
|
|
||||||
|
developers {
|
||||||
|
developer {
|
||||||
|
id = "zihluwang"
|
||||||
|
name = "Zihlu Wang"
|
||||||
|
email = "really@zihlu.wang"
|
||||||
|
timezone = "Asia/Hong_Kong"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
from(components["java"])
|
||||||
|
|
||||||
|
signing {
|
||||||
|
sign(publishing.publications["propertyGuardSpringBootStarter"])
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
repositories {
|
||||||
|
maven {
|
||||||
|
name = "sonatypeNexus"
|
||||||
|
url = URI(providers.gradleProperty("repo.maven-central.host").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.maven-central.username").get()
|
||||||
|
password = providers.gradleProperty("repo.maven-central.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
maven {
|
||||||
|
name = "codingNexus"
|
||||||
|
url = URI(providers.gradleProperty("repo.coding.host").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.coding.username").get()
|
||||||
|
password = providers.gradleProperty("repo.coding.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
maven {
|
||||||
|
name = "githubPackages"
|
||||||
|
url = URI(providers.gradleProperty("repo.github.host").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.github.username").get()
|
||||||
|
password = providers.gradleProperty("repo.github.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,65 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!--
|
|
||||||
~ Copyright (C) 2023 CodeCraftersCN.
|
|
||||||
~
|
|
||||||
~ Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
~ you may not use this file except in compliance with the License.
|
|
||||||
~ You may obtain a copy of the License at
|
|
||||||
~
|
|
||||||
~ http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
~
|
|
||||||
~ Unless required by applicable law or agreed to in writing, software
|
|
||||||
~ distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
~
|
|
||||||
~ See the License for the specific language governing permissions and
|
|
||||||
~ limitations under the License.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
|
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
||||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
|
||||||
<parent>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>jdevkit</artifactId>
|
|
||||||
<version>1.2.2</version>
|
|
||||||
</parent>
|
|
||||||
|
|
||||||
<artifactId>property-guard-spring-boot-starter</artifactId>
|
|
||||||
|
|
||||||
<properties>
|
|
||||||
<maven.compiler.source>17</maven.compiler.source>
|
|
||||||
<maven.compiler.target>17</maven.compiler.target>
|
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
||||||
</properties>
|
|
||||||
|
|
||||||
<dependencies>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>devkit-utils</artifactId>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.springframework.boot</groupId>
|
|
||||||
<artifactId>spring-boot-autoconfigure</artifactId>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.springframework.boot</groupId>
|
|
||||||
<artifactId>spring-boot-starter-logging</artifactId>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.springframework.boot</groupId>
|
|
||||||
<artifactId>spring-boot-configuration-processor</artifactId>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.springframework.boot</groupId>
|
|
||||||
<artifactId>spring-boot-starter-test</artifactId>
|
|
||||||
<scope>test</scope>
|
|
||||||
</dependency>
|
|
||||||
</dependencies>
|
|
||||||
|
|
||||||
</project>
|
|
||||||
@@ -0,0 +1,30 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 2023 CodeCraftersCN.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
*
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
rootProject.name = "JDevKit"
|
||||||
|
|
||||||
|
include(
|
||||||
|
"devkit-core",
|
||||||
|
"devkit-utils",
|
||||||
|
"guid",
|
||||||
|
"webcal",
|
||||||
|
"simple-jwt-facade",
|
||||||
|
"simple-jwt-authzero",
|
||||||
|
"simple-jwt-jjwt",
|
||||||
|
"simple-jwt-spring-boot-starter",
|
||||||
|
"property-guard-spring-boot-starter"
|
||||||
|
)
|
||||||
@@ -0,0 +1,108 @@
|
|||||||
|
import java.net.URI
|
||||||
|
|
||||||
|
val globalGroupId: String by rootProject.extra
|
||||||
|
val globalVersion: String by rootProject.extra
|
||||||
|
val projectUrl: String by rootProject.extra
|
||||||
|
val projectGithubUrl: String by rootProject.extra
|
||||||
|
val licenseName: String by rootProject.extra
|
||||||
|
val licenseUrl: String by rootProject.extra
|
||||||
|
|
||||||
|
val jacksonVersion: String by project
|
||||||
|
val javaJwtVersion: String by project
|
||||||
|
val jjwtVersion: String by project
|
||||||
|
val okhttpVersion: String by project
|
||||||
|
val springVersion: String by project
|
||||||
|
val springBootVersion: String by project
|
||||||
|
|
||||||
|
group = globalGroupId
|
||||||
|
version = globalVersion
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
implementation(project(":simple-jwt-facade"))
|
||||||
|
implementation("com.fasterxml.jackson.core:jackson-databind:$jacksonVersion")
|
||||||
|
implementation("com.auth0:java-jwt:$javaJwtVersion")
|
||||||
|
}
|
||||||
|
|
||||||
|
java {
|
||||||
|
sourceCompatibility = JavaVersion.VERSION_17
|
||||||
|
targetCompatibility = JavaVersion.VERSION_17
|
||||||
|
withSourcesJar()
|
||||||
|
withJavadocJar()
|
||||||
|
}
|
||||||
|
|
||||||
|
tasks.test {
|
||||||
|
useJUnitPlatform()
|
||||||
|
}
|
||||||
|
|
||||||
|
publishing {
|
||||||
|
publications {
|
||||||
|
create<MavenPublication>("simpleJwtAuthzero") {
|
||||||
|
groupId = globalGroupId
|
||||||
|
artifactId = "simple-jwt-authzero"
|
||||||
|
version = globalVersion
|
||||||
|
|
||||||
|
pom {
|
||||||
|
name = "Simple JWT :: Auth0"
|
||||||
|
description = "The implementation of Simple JWT using com.auth0 library."
|
||||||
|
url = projectUrl
|
||||||
|
|
||||||
|
licenses {
|
||||||
|
license {
|
||||||
|
name = licenseName
|
||||||
|
url = licenseUrl
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
scm {
|
||||||
|
connection = "scm:git:git://github.com:CodeCraftersCN/JDevKit.git"
|
||||||
|
developerConnection = "scm:git:git://github.com:CodeCraftersCN/JDevKit.git"
|
||||||
|
url = projectGithubUrl
|
||||||
|
}
|
||||||
|
|
||||||
|
developers {
|
||||||
|
developer {
|
||||||
|
id = "zihluwang"
|
||||||
|
name = "Zihlu Wang"
|
||||||
|
email = "really@zihlu.wang"
|
||||||
|
timezone = "Asia/Hong_Kong"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
from(components["java"])
|
||||||
|
|
||||||
|
signing {
|
||||||
|
sign(publishing.publications["simpleJwtAuthzero"])
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
repositories {
|
||||||
|
maven {
|
||||||
|
name = "sonatypeNexus"
|
||||||
|
url = URI(providers.gradleProperty("repo.maven-central.host").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.maven-central.username").get()
|
||||||
|
password = providers.gradleProperty("repo.maven-central.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
maven {
|
||||||
|
name = "codingNexus"
|
||||||
|
url = URI(providers.gradleProperty("repo.coding.host").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.coding.username").get()
|
||||||
|
password = providers.gradleProperty("repo.coding.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
maven {
|
||||||
|
name = "githubPackages"
|
||||||
|
url = URI(providers.gradleProperty("repo.github.host").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.github.username").get()
|
||||||
|
password = providers.gradleProperty("repo.github.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,54 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!--
|
|
||||||
~ Copyright (C) 2023 CodeCraftersCN.
|
|
||||||
~
|
|
||||||
~ Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
~ you may not use this file except in compliance with the License.
|
|
||||||
~ You may obtain a copy of the License at
|
|
||||||
~
|
|
||||||
~ http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
~
|
|
||||||
~ Unless required by applicable law or agreed to in writing, software
|
|
||||||
~ distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
~
|
|
||||||
~ See the License for the specific language governing permissions and
|
|
||||||
~ limitations under the License.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
|
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
||||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
|
||||||
<parent>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>jdevkit</artifactId>
|
|
||||||
<version>1.2.2</version>
|
|
||||||
</parent>
|
|
||||||
|
|
||||||
<artifactId>simple-jwt-authzero</artifactId>
|
|
||||||
|
|
||||||
<properties>
|
|
||||||
<maven.compiler.source>17</maven.compiler.source>
|
|
||||||
<maven.compiler.target>17</maven.compiler.target>
|
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
||||||
</properties>
|
|
||||||
|
|
||||||
<dependencies>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>simple-jwt-facade</artifactId>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>com.fasterxml.jackson.core</groupId>
|
|
||||||
<artifactId>jackson-databind</artifactId>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>com.auth0</groupId>
|
|
||||||
<artifactId>java-jwt</artifactId>
|
|
||||||
</dependency>
|
|
||||||
</dependencies>
|
|
||||||
|
|
||||||
</project>
|
|
||||||
@@ -0,0 +1,108 @@
|
|||||||
|
import java.net.URI
|
||||||
|
|
||||||
|
val globalGroupId: String by rootProject.extra
|
||||||
|
val globalVersion: String by rootProject.extra
|
||||||
|
val projectUrl: String by rootProject.extra
|
||||||
|
val projectGithubUrl: String by rootProject.extra
|
||||||
|
val licenseName: String by rootProject.extra
|
||||||
|
val licenseUrl: String by rootProject.extra
|
||||||
|
|
||||||
|
val jacksonVersion: String by project
|
||||||
|
val javaJwtVersion: String by project
|
||||||
|
val jjwtVersion: String by project
|
||||||
|
val okhttpVersion: String by project
|
||||||
|
val springVersion: String by project
|
||||||
|
val springBootVersion: String by project
|
||||||
|
|
||||||
|
group = globalGroupId
|
||||||
|
version = globalVersion
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
implementation(project(":devkit-core"))
|
||||||
|
implementation(project(":devkit-utils"))
|
||||||
|
implementation(project(":guid"))
|
||||||
|
}
|
||||||
|
|
||||||
|
java {
|
||||||
|
sourceCompatibility = JavaVersion.VERSION_17
|
||||||
|
targetCompatibility = JavaVersion.VERSION_17
|
||||||
|
withSourcesJar()
|
||||||
|
withJavadocJar()
|
||||||
|
}
|
||||||
|
|
||||||
|
tasks.test {
|
||||||
|
useJUnitPlatform()
|
||||||
|
}
|
||||||
|
|
||||||
|
publishing {
|
||||||
|
publications {
|
||||||
|
create<MavenPublication>("simpleJwtFacade") {
|
||||||
|
groupId = globalGroupId
|
||||||
|
artifactId = "simple-jwt-facade"
|
||||||
|
version = globalVersion
|
||||||
|
|
||||||
|
pom {
|
||||||
|
name = "Simple JWT :: Facade"
|
||||||
|
description = "The facade of Simple JWT."
|
||||||
|
url = projectUrl
|
||||||
|
|
||||||
|
licenses {
|
||||||
|
license {
|
||||||
|
name = licenseName
|
||||||
|
url = licenseUrl
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
scm {
|
||||||
|
connection = "scm:git:git://github.com:CodeCraftersCN/JDevKit.git"
|
||||||
|
developerConnection = "scm:git:git://github.com:CodeCraftersCN/JDevKit.git"
|
||||||
|
url = projectGithubUrl
|
||||||
|
}
|
||||||
|
|
||||||
|
developers {
|
||||||
|
developer {
|
||||||
|
id = "zihluwang"
|
||||||
|
name = "Zihlu Wang"
|
||||||
|
email = "really@zihlu.wang"
|
||||||
|
timezone = "Asia/Hong_Kong"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
from(components["java"])
|
||||||
|
|
||||||
|
signing {
|
||||||
|
sign(publishing.publications["simpleJwtFacade"])
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
repositories {
|
||||||
|
maven {
|
||||||
|
name = "sonatypeNexus"
|
||||||
|
url = URI(providers.gradleProperty("repo.maven-central.host").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.maven-central.username").get()
|
||||||
|
password = providers.gradleProperty("repo.maven-central.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
maven {
|
||||||
|
name = "codingNexus"
|
||||||
|
url = URI(providers.gradleProperty("repo.coding.host").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.coding.username").get()
|
||||||
|
password = providers.gradleProperty("repo.coding.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
maven {
|
||||||
|
name = "githubPackages"
|
||||||
|
url = URI(providers.gradleProperty("repo.github.host").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.github.username").get()
|
||||||
|
password = providers.gradleProperty("repo.github.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,54 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!--
|
|
||||||
~ Copyright (C) 2023 CodeCraftersCN.
|
|
||||||
~
|
|
||||||
~ Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
~ you may not use this file except in compliance with the License.
|
|
||||||
~ You may obtain a copy of the License at
|
|
||||||
~
|
|
||||||
~ http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
~
|
|
||||||
~ Unless required by applicable law or agreed to in writing, software
|
|
||||||
~ distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
~
|
|
||||||
~ See the License for the specific language governing permissions and
|
|
||||||
~ limitations under the License.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
|
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
||||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
|
||||||
<parent>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>jdevkit</artifactId>
|
|
||||||
<version>1.2.2</version>
|
|
||||||
</parent>
|
|
||||||
|
|
||||||
<artifactId>simple-jwt-facade</artifactId>
|
|
||||||
|
|
||||||
<properties>
|
|
||||||
<maven.compiler.source>17</maven.compiler.source>
|
|
||||||
<maven.compiler.target>17</maven.compiler.target>
|
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
||||||
</properties>
|
|
||||||
|
|
||||||
<dependencies>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>devkit-core</artifactId>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>devkit-utils</artifactId>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>guid</artifactId>
|
|
||||||
</dependency>
|
|
||||||
</dependencies>
|
|
||||||
|
|
||||||
</project>
|
|
||||||
@@ -0,0 +1,111 @@
|
|||||||
|
import java.net.URI
|
||||||
|
|
||||||
|
val globalGroupId: String by rootProject.extra
|
||||||
|
val globalVersion: String by rootProject.extra
|
||||||
|
val projectUrl: String by rootProject.extra
|
||||||
|
val projectGithubUrl: String by rootProject.extra
|
||||||
|
val licenseName: String by rootProject.extra
|
||||||
|
val licenseUrl: String by rootProject.extra
|
||||||
|
|
||||||
|
val jacksonVersion: String by project
|
||||||
|
val javaJwtVersion: String by project
|
||||||
|
val jjwtVersion: String by project
|
||||||
|
val okhttpVersion: String by project
|
||||||
|
val springVersion: String by project
|
||||||
|
val springBootVersion: String by project
|
||||||
|
|
||||||
|
group = globalGroupId
|
||||||
|
version = globalVersion
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
implementation(project(":devkit-utils"))
|
||||||
|
implementation("com.fasterxml.jackson.core:jackson-databind:$jacksonVersion")
|
||||||
|
implementation("io.jsonwebtoken:jjwt-api:$jjwtVersion")
|
||||||
|
implementation("io.jsonwebtoken:jjwt-impl:$jjwtVersion")
|
||||||
|
implementation("io.jsonwebtoken:jjwt-jackson:$jjwtVersion")
|
||||||
|
implementation(project(":simple-jwt-facade"))
|
||||||
|
}
|
||||||
|
|
||||||
|
java {
|
||||||
|
sourceCompatibility = JavaVersion.VERSION_17
|
||||||
|
targetCompatibility = JavaVersion.VERSION_17
|
||||||
|
withSourcesJar()
|
||||||
|
withJavadocJar()
|
||||||
|
}
|
||||||
|
|
||||||
|
tasks.test {
|
||||||
|
useJUnitPlatform()
|
||||||
|
}
|
||||||
|
|
||||||
|
publishing {
|
||||||
|
publications {
|
||||||
|
create<MavenPublication>("simpleJwtJjwt") {
|
||||||
|
groupId = globalGroupId
|
||||||
|
artifactId = "simple-jwt-jjwt"
|
||||||
|
version = globalVersion
|
||||||
|
|
||||||
|
pom {
|
||||||
|
name = "Simple JWT :: JJWT"
|
||||||
|
description = "Simple JWT implemented by io.jsonwebtoken:jjwt library."
|
||||||
|
url = projectUrl
|
||||||
|
|
||||||
|
licenses {
|
||||||
|
license {
|
||||||
|
name = licenseName
|
||||||
|
url = licenseUrl
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
scm {
|
||||||
|
connection = "scm:git:git://github.com:CodeCraftersCN/JDevKit.git"
|
||||||
|
developerConnection = "scm:git:git://github.com:CodeCraftersCN/JDevKit.git"
|
||||||
|
url = projectGithubUrl
|
||||||
|
}
|
||||||
|
|
||||||
|
developers {
|
||||||
|
developer {
|
||||||
|
id = "zihluwang"
|
||||||
|
name = "Zihlu Wang"
|
||||||
|
email = "really@zihlu.wang"
|
||||||
|
timezone = "Asia/Hong_Kong"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
from(components["java"])
|
||||||
|
|
||||||
|
signing {
|
||||||
|
sign(publishing.publications["simpleJwtJjwt"])
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
repositories {
|
||||||
|
maven {
|
||||||
|
name = "sonatypeNexus"
|
||||||
|
url = URI(providers.gradleProperty("repo.maven-central.host").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.maven-central.username").get()
|
||||||
|
password = providers.gradleProperty("repo.maven-central.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
maven {
|
||||||
|
name = "codingNexus"
|
||||||
|
url = URI(providers.gradleProperty("repo.coding.host").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.coding.username").get()
|
||||||
|
password = providers.gradleProperty("repo.coding.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
maven {
|
||||||
|
name = "githubPackages"
|
||||||
|
url = URI(providers.gradleProperty("repo.github.host").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.github.username").get()
|
||||||
|
password = providers.gradleProperty("repo.github.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,69 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!--
|
|
||||||
~ Copyright (C) 2023 CodeCraftersCN.
|
|
||||||
~
|
|
||||||
~ Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
~ you may not use this file except in compliance with the License.
|
|
||||||
~ You may obtain a copy of the License at
|
|
||||||
~
|
|
||||||
~ http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
~
|
|
||||||
~ Unless required by applicable law or agreed to in writing, software
|
|
||||||
~ distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
~
|
|
||||||
~ See the License for the specific language governing permissions and
|
|
||||||
~ limitations under the License.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
|
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
||||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
|
||||||
<parent>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>jdevkit</artifactId>
|
|
||||||
<version>1.2.2</version>
|
|
||||||
</parent>
|
|
||||||
|
|
||||||
<artifactId>simple-jwt-jjwt</artifactId>
|
|
||||||
|
|
||||||
<properties>
|
|
||||||
<maven.compiler.source>17</maven.compiler.source>
|
|
||||||
<maven.compiler.target>17</maven.compiler.target>
|
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
||||||
</properties>
|
|
||||||
|
|
||||||
<dependencies>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>devkit-utils</artifactId>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>com.fasterxml.jackson.core</groupId>
|
|
||||||
<artifactId>jackson-databind</artifactId>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>io.jsonwebtoken</groupId>
|
|
||||||
<artifactId>jjwt-api</artifactId>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>io.jsonwebtoken</groupId>
|
|
||||||
<artifactId>jjwt-impl</artifactId>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>io.jsonwebtoken</groupId>
|
|
||||||
<artifactId>jjwt-jackson</artifactId>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>simple-jwt-facade</artifactId>
|
|
||||||
</dependency>
|
|
||||||
</dependencies>
|
|
||||||
|
|
||||||
</project>
|
|
||||||
@@ -0,0 +1,133 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 2023 CodeCraftersCN.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
*
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import java.net.URI
|
||||||
|
|
||||||
|
val globalGroupId: String by rootProject.extra
|
||||||
|
val globalVersion: String by rootProject.extra
|
||||||
|
val projectUrl: String by rootProject.extra
|
||||||
|
val projectGithubUrl: String by rootProject.extra
|
||||||
|
val licenseName: String by rootProject.extra
|
||||||
|
val licenseUrl: String by rootProject.extra
|
||||||
|
|
||||||
|
val jacksonVersion: String by project
|
||||||
|
val javaJwtVersion: String by project
|
||||||
|
val jjwtVersion: String by project
|
||||||
|
val okhttpVersion: String by project
|
||||||
|
val springVersion: String by project
|
||||||
|
val springBootVersion: String by project
|
||||||
|
|
||||||
|
group = globalGroupId
|
||||||
|
version = globalVersion
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
implementation(project(":simple-jwt-facade"))
|
||||||
|
compileOnly("com.auth0:java-jwt:$javaJwtVersion")
|
||||||
|
compileOnly(project(":simple-jwt-authzero"))
|
||||||
|
compileOnly("io.jsonwebtoken:jjwt-api:$jjwtVersion")
|
||||||
|
compileOnly("io.jsonwebtoken:jjwt-impl:$jjwtVersion")
|
||||||
|
compileOnly("io.jsonwebtoken:jjwt-jackson:$jjwtVersion")
|
||||||
|
compileOnly(project(":simple-jwt-jjwt"))
|
||||||
|
implementation("org.springframework.boot:spring-boot-autoconfigure:$springBootVersion")
|
||||||
|
implementation("org.springframework.boot:spring-boot-starter-logging:$springBootVersion")
|
||||||
|
implementation("org.springframework.boot:spring-boot-configuration-processor:$springBootVersion")
|
||||||
|
testImplementation("org.springframework.boot:spring-boot-starter-test:$springBootVersion")
|
||||||
|
}
|
||||||
|
|
||||||
|
java {
|
||||||
|
sourceCompatibility = JavaVersion.VERSION_17
|
||||||
|
targetCompatibility = JavaVersion.VERSION_17
|
||||||
|
withSourcesJar()
|
||||||
|
withJavadocJar()
|
||||||
|
}
|
||||||
|
|
||||||
|
tasks.test {
|
||||||
|
useJUnitPlatform()
|
||||||
|
}
|
||||||
|
|
||||||
|
publishing {
|
||||||
|
publications {
|
||||||
|
create<MavenPublication>("guid") {
|
||||||
|
groupId = globalGroupId
|
||||||
|
artifactId = "guid"
|
||||||
|
version = globalVersion
|
||||||
|
|
||||||
|
pom {
|
||||||
|
name = "DevKit - GUID"
|
||||||
|
description = "The guid module of JDevKit."
|
||||||
|
url = projectUrl
|
||||||
|
|
||||||
|
licenses {
|
||||||
|
license {
|
||||||
|
name = licenseName
|
||||||
|
url = licenseUrl
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
scm {
|
||||||
|
connection = "scm:git:git://github.com:CodeCraftersCN/JDevKit.git"
|
||||||
|
developerConnection = "scm:git:git://github.com:CodeCraftersCN/JDevKit.git"
|
||||||
|
url = projectGithubUrl
|
||||||
|
}
|
||||||
|
|
||||||
|
developers {
|
||||||
|
developer {
|
||||||
|
id = "zihluwang"
|
||||||
|
name = "Zihlu Wang"
|
||||||
|
email = "really@zihlu.wang"
|
||||||
|
timezone = "Asia/Hong_Kong"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
from(components["java"])
|
||||||
|
|
||||||
|
signing {
|
||||||
|
sign(publishing.publications["guid"])
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
repositories {
|
||||||
|
maven {
|
||||||
|
name = "sonatypeNexus"
|
||||||
|
url = URI(providers.gradleProperty("repo.maven-central.host").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.maven-central.username").get()
|
||||||
|
password = providers.gradleProperty("repo.maven-central.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
maven {
|
||||||
|
name = "codingNexus"
|
||||||
|
url = URI(providers.gradleProperty("repo.coding.host").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.coding.username").get()
|
||||||
|
password = providers.gradleProperty("repo.coding.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
maven {
|
||||||
|
name = "githubPackages"
|
||||||
|
url = URI(providers.gradleProperty("repo.github.host").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.github.username").get()
|
||||||
|
password = providers.gradleProperty("repo.github.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,101 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!--
|
|
||||||
~ Copyright (C) 2023 CodeCraftersCN.
|
|
||||||
~
|
|
||||||
~ Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
~ you may not use this file except in compliance with the License.
|
|
||||||
~ You may obtain a copy of the License at
|
|
||||||
~
|
|
||||||
~ http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
~
|
|
||||||
~ Unless required by applicable law or agreed to in writing, software
|
|
||||||
~ distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
~
|
|
||||||
~ See the License for the specific language governing permissions and
|
|
||||||
~ limitations under the License.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
|
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
||||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
|
||||||
<parent>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>jdevkit</artifactId>
|
|
||||||
<version>1.2.2</version>
|
|
||||||
</parent>
|
|
||||||
|
|
||||||
<artifactId>simple-jwt-spring-boot-starter</artifactId>
|
|
||||||
|
|
||||||
<properties>
|
|
||||||
<maven.compiler.source>17</maven.compiler.source>
|
|
||||||
<maven.compiler.target>17</maven.compiler.target>
|
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
||||||
</properties>
|
|
||||||
|
|
||||||
<dependencies>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>simple-jwt-facade</artifactId>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>com.auth0</groupId>
|
|
||||||
<artifactId>java-jwt</artifactId>
|
|
||||||
<scope>provided</scope>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>simple-jwt-authzero</artifactId>
|
|
||||||
<scope>provided</scope>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>io.jsonwebtoken</groupId>
|
|
||||||
<artifactId>jjwt-api</artifactId>
|
|
||||||
<scope>provided</scope>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>io.jsonwebtoken</groupId>
|
|
||||||
<artifactId>jjwt-impl</artifactId>
|
|
||||||
<scope>provided</scope>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>io.jsonwebtoken</groupId>
|
|
||||||
<artifactId>jjwt-jackson</artifactId>
|
|
||||||
<scope>provided</scope>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>simple-jwt-jjwt</artifactId>
|
|
||||||
<scope>provided</scope>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.springframework.boot</groupId>
|
|
||||||
<artifactId>spring-boot-autoconfigure</artifactId>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.springframework.boot</groupId>
|
|
||||||
<artifactId>spring-boot-starter-logging</artifactId>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.springframework.boot</groupId>
|
|
||||||
<artifactId>spring-boot-configuration-processor</artifactId>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.springframework.boot</groupId>
|
|
||||||
<artifactId>spring-boot-starter-test</artifactId>
|
|
||||||
<scope>test</scope>
|
|
||||||
</dependency>
|
|
||||||
</dependencies>
|
|
||||||
|
|
||||||
</project>
|
|
||||||
@@ -0,0 +1,99 @@
|
|||||||
|
import java.net.URI
|
||||||
|
|
||||||
|
val globalGroupId: String by rootProject.extra
|
||||||
|
val globalVersion: String by rootProject.extra
|
||||||
|
val projectUrl: String by rootProject.extra
|
||||||
|
val projectGithubUrl: String by rootProject.extra
|
||||||
|
val licenseName: String by rootProject.extra
|
||||||
|
val licenseUrl: String by rootProject.extra
|
||||||
|
|
||||||
|
group = globalGroupId
|
||||||
|
version = globalVersion
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
implementation(project(":devkit-core"))
|
||||||
|
}
|
||||||
|
|
||||||
|
java {
|
||||||
|
sourceCompatibility = JavaVersion.VERSION_17
|
||||||
|
targetCompatibility = JavaVersion.VERSION_17
|
||||||
|
withSourcesJar()
|
||||||
|
withJavadocJar()
|
||||||
|
}
|
||||||
|
|
||||||
|
tasks.test {
|
||||||
|
useJUnitPlatform()
|
||||||
|
}
|
||||||
|
|
||||||
|
publishing {
|
||||||
|
publications {
|
||||||
|
create<MavenPublication>("guid") {
|
||||||
|
groupId = globalGroupId
|
||||||
|
artifactId = "guid"
|
||||||
|
version = globalVersion
|
||||||
|
|
||||||
|
pom {
|
||||||
|
name = "DevKit - GUID"
|
||||||
|
description = "The guid module of JDevKit."
|
||||||
|
url = projectUrl
|
||||||
|
|
||||||
|
licenses {
|
||||||
|
license {
|
||||||
|
name = licenseName
|
||||||
|
url = licenseUrl
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
scm {
|
||||||
|
connection = "scm:git:git://github.com:CodeCraftersCN/JDevKit.git"
|
||||||
|
developerConnection = "scm:git:git://github.com:CodeCraftersCN/JDevKit.git"
|
||||||
|
url = projectGithubUrl
|
||||||
|
}
|
||||||
|
|
||||||
|
developers {
|
||||||
|
developer {
|
||||||
|
id = "zihluwang"
|
||||||
|
name = "Zihlu Wang"
|
||||||
|
email = "really@zihlu.wang"
|
||||||
|
timezone = "Asia/Hong_Kong"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
from(components["java"])
|
||||||
|
|
||||||
|
signing {
|
||||||
|
sign(publishing.publications["guid"])
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
repositories {
|
||||||
|
maven {
|
||||||
|
name = "sonatypeNexus"
|
||||||
|
url = URI(providers.gradleProperty("repo.maven-central.host").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.maven-central.username").get()
|
||||||
|
password = providers.gradleProperty("repo.maven-central.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
maven {
|
||||||
|
name = "codingNexus"
|
||||||
|
url = URI(providers.gradleProperty("repo.coding.host").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.coding.username").get()
|
||||||
|
password = providers.gradleProperty("repo.coding.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
maven {
|
||||||
|
name = "githubPackages"
|
||||||
|
url = URI(providers.gradleProperty("repo.github.host").get())
|
||||||
|
credentials {
|
||||||
|
username = providers.gradleProperty("repo.github.username").get()
|
||||||
|
password = providers.gradleProperty("repo.github.password").get()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,37 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!--
|
|
||||||
~ Copyright (C) 2023 CodeCraftersCN.
|
|
||||||
~
|
|
||||||
~ Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
~ you may not use this file except in compliance with the License.
|
|
||||||
~ You may obtain a copy of the License at
|
|
||||||
~
|
|
||||||
~ http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
~
|
|
||||||
~ Unless required by applicable law or agreed to in writing, software
|
|
||||||
~ distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
~
|
|
||||||
~ See the License for the specific language governing permissions and
|
|
||||||
~ limitations under the License.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
|
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
||||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
|
||||||
<parent>
|
|
||||||
<groupId>cn.org.codecrafters</groupId>
|
|
||||||
<artifactId>jdevkit</artifactId>
|
|
||||||
<version>1.2.2</version>
|
|
||||||
</parent>
|
|
||||||
|
|
||||||
<artifactId>webcal</artifactId>
|
|
||||||
|
|
||||||
<properties>
|
|
||||||
<maven.compiler.source>17</maven.compiler.source>
|
|
||||||
<maven.compiler.target>17</maven.compiler.target>
|
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
||||||
</properties>
|
|
||||||
|
|
||||||
</project>
|
|
||||||
Reference in New Issue
Block a user