Skip to content

Commit bac9659

Browse files
committed
Move To Java 21
1 parent fd5f7e4 commit bac9659

File tree

9 files changed

+259
-218
lines changed

9 files changed

+259
-218
lines changed

.github/workflows/build-main.yml

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -17,16 +17,15 @@ jobs:
1717
SIGNING_PASSWORD: ${{ secrets.SIGNING_PASSWORD }}
1818
COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
1919
steps:
20-
- name: Setup JDK 8
21-
uses: actions/setup-java@v4
20+
- name: Setup Maven And Java
21+
uses: s4u/setup-maven-action@v1.18.0
2222
with:
23-
java-version: '8'
24-
distribution: 'adopt'
23+
java-version: 21
2524
- name: Check out code
2625
uses: actions/checkout@v4
2726
- name: Build and Test
28-
run: chmod +x gradlew && ./gradlew clean test jacocoTestReport coveralls
27+
run: chmod +x gradlew && ./gradlew clean test
2928
- name: Verify Javadoc
3029
run: ./gradlew javadoc
31-
- name: Verify and Publish Snapshot
32-
run: ./gradlew -i publishToSonatype
30+
- name: Publish Snapshot
31+
run: ./gradlew -i publishAllPublicationsToMavenRepository

.github/workflows/build-pr.yml

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,13 @@ jobs:
1111
BUILD_EVENT: ${{ github.event_name }}
1212
COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
1313
steps:
14-
- name: Setup JDK 8
15-
uses: actions/setup-java@v4
16-
with:
17-
java-version: '8'
18-
distribution: 'adopt'
1914
- name: Check out code
2015
uses: actions/checkout@v4
16+
- name: Setup Maven Action
17+
uses: s4u/setup-maven-action@v1.18.0
18+
with:
19+
java-version: 21
2120
- name: Build and Test
22-
run: chmod +x gradlew && ./gradlew clean test jacocoTestReport coveralls
21+
run: chmod +x gradlew && ./gradlew clean test
2322
- name: Verify Javadoc
2423
run: ./gradlew javadoc

.github/workflows/build-release.yml

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,10 @@ jobs:
1717
SIGNING_KEY: ${{ secrets.SIGNING_KEY }}
1818
SIGNING_PASSWORD: ${{ secrets.SIGNING_PASSWORD }}
1919
steps:
20-
- name: Setup JDK 8
21-
uses: actions/setup-java@v4
20+
- name: Setup Maven And Java
21+
uses: s4u/setup-maven-action@v1.18.0
2222
with:
23-
java-version: '8'
24-
distribution: 'adopt'
23+
java-version: 21
2524
- name: Check out code
2625
uses: actions/checkout@v4
2726
- name: Build and Test

build.gradle

Lines changed: 38 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,13 @@
11
import org.gradle.internal.os.OperatingSystem
22

33
plugins {
4-
id 'java'
54
id 'java-library'
65
id 'maven-publish'
7-
id 'jacoco'
8-
id 'com.github.kt3k.coveralls' version '2.12.0'
9-
id "org.gradle.test-retry" version "1.1.9"
10-
id 'io.github.gradle-nexus.publish-plugin' version '1.1.0'
116
id 'signing'
7+
id 'io.github.gradle-nexus.publish-plugin' version '1.1.0'
128
}
139

14-
def jarVersion = "2.0.2"
10+
def jarVersion = "2.21.0.TEST.1"
1511
group = 'io.nats'
1612

1713
def isMerge = System.getenv("BUILD_EVENT") == "push"
@@ -20,14 +16,19 @@ def isRelease = System.getenv("BUILD_EVENT") == "release"
2016
// version is the variable the build actually uses.
2117
version = isRelease ? jarVersion : jarVersion + "-SNAPSHOT"
2218

19+
// Apply a specific Java toolchain to ease working on different environments.
2320
java {
24-
sourceCompatibility = JavaVersion.VERSION_1_8
25-
targetCompatibility = JavaVersion.VERSION_1_8
21+
toolchain {
22+
languageVersion = JavaLanguageVersion.of(21)
23+
}
24+
withJavadocJar()
25+
withSourcesJar()
2626
}
2727

2828
repositories {
2929
mavenCentral()
3030
maven { url "https://oss.sonatype.org/content/repositories/releases/" }
31+
maven { url "https://repo1.maven.org/maven2/" }
3132
}
3233

3334
dependencies {
@@ -45,9 +46,10 @@ test {
4546
}
4647

4748
javadoc {
49+
options.addBooleanOption('html5', true)
4850
options.overview = 'src/main/javadoc/overview.html' // relative to source root
4951
source = sourceSets.main.allJava
50-
title = "NATS.IO Java NKeys"
52+
title = "NATS.IO JNats JSON"
5153
classpath = sourceSets.main.runtimeClasspath
5254
doLast {
5355
if (!OperatingSystem.current().isWindows()) {
@@ -66,37 +68,6 @@ javadoc {
6668
}
6769
}
6870

69-
task javadocJar(type: Jar) {
70-
archiveClassifier.set('javadoc')
71-
from javadoc
72-
}
73-
74-
task sourcesJar(type: Jar) {
75-
archiveClassifier.set('sources')
76-
from sourceSets.main.allSource
77-
}
78-
79-
jacoco {
80-
toolVersion = "0.8.6"
81-
}
82-
83-
jacocoTestReport {
84-
reports {
85-
xml.enabled = true // coveralls plugin depends on xml format report
86-
html.enabled = true
87-
}
88-
afterEvaluate { // only report on main library not examples
89-
classDirectories.setFrom(files(classDirectories.files.collect {
90-
fileTree(dir: it,
91-
exclude: ['**/examples**'])
92-
}))
93-
}
94-
}
95-
96-
artifacts {
97-
archives javadocJar, sourcesJar
98-
}
99-
10071
if (isMerge || isRelease) {
10172
nexusPublishing {
10273
repositories {
@@ -113,14 +84,18 @@ if (isMerge || isRelease) {
11384
publishing {
11485
publications {
11586
mavenJava(MavenPublication) {
87+
artifactId = archivesBaseName
11688
from components.java
117-
artifact sourcesJar
118-
artifact javadocJar
89+
versionMapping {
90+
usage('java-api') {
91+
fromResolutionOf('runtimeClasspath')
92+
}
93+
usage('java-runtime') {
94+
fromResolutionResult()
95+
}
96+
}
11997
pom {
120-
name = rootProject.name
121-
packaging = 'jar'
122-
groupId = group
123-
artifactId = archivesBaseName
98+
name = 'JNats Json'
12499
description = 'JSON Parser built specifically for JNATS'
125100
url = 'https://github.com/nats-io/nats.java.json'
126101
licenses {
@@ -134,7 +109,7 @@ publishing {
134109
id = "synadia"
135110
name = "Synadia"
136111
email = "info@synadia.com"
137-
url = "https://nats.io"
112+
url = "https://synadia.io"
138113
}
139114
}
140115
scm {
@@ -143,15 +118,21 @@ publishing {
143118
}
144119
}
145120
}
121+
// repositories {
122+
// maven {
123+
// // change URLs to point to your repos, e.g. http://my.org/repo
124+
// def releasesRepoUrl = "https://ossrh-staging-api.central.sonatype.com/service/local/"
125+
// def snapshotsRepoUrl = layout.buildDirectory.dir("https://central.sonatype.com/repository/maven-snapshots/")
126+
// url = version.endsWith('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl
127+
// }
128+
// }
146129
}
147130

148-
if (isRelease) {
149-
signing {
150-
def signingKeyId = System.getenv('SIGNING_KEY_ID')
151-
def signingKey = System.getenv('SIGNING_KEY')
152-
def signingPassword = System.getenv('SIGNING_PASSWORD')
153-
useInMemoryPgpKeys(signingKeyId, signingKey, signingPassword)
154-
sign configurations.archives
155-
sign publishing.publications.mavenJava
156-
}
157-
}
131+
signing {
132+
def signingKeyId = System.getenv('SIGNING_KEY_ID')
133+
def signingKey = System.getenv('SIGNING_KEY')
134+
def signingPassword = System.getenv('SIGNING_PASSWORD')
135+
useInMemoryPgpKeys(signingKeyId, signingKey, signingPassword)
136+
sign configurations.archives
137+
sign publishing.publications.mavenJava
138+
}

env.bat

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
set JAVA_HOME=C:\Program Files\Java\jdk-21
2+
set PATH=C:\Program Files\Java\jdk-21\bin;C:\Programs\gradle-8.14\bin;%PATH%

gradle/wrapper/gradle-wrapper.jar

-14.6 KB
Binary file not shown.
Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-6.3-bin.zip
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14-bin.zip
4+
networkTimeout=10000
5+
validateDistributionUrl=true
46
zipStoreBase=GRADLE_USER_HOME
57
zipStorePath=wrapper/dists

0 commit comments

Comments
 (0)