plugins { id 'java-library' id 'maven-publish' } group = "dev.selimaj" version = "0.2.0" java { toolchain { languageVersion = JavaLanguageVersion.of(17) } withSourcesJar() } repositories { mavenCentral() } dependencies { // JSON parsing and serialization; JsonNode is part of the public API. api 'com.fasterxml.jackson.core:jackson-databind:2.17.0' api 'com.fasterxml.jackson.core:jackson-annotations:2.17.0' api 'com.fasterxml.jackson.core:jackson-core:2.17.0' // For testing: a real WebSocket server for the client to talk to. testImplementation 'org.junit.jupiter:junit-jupiter:5.10.0' testRuntimeOnly 'org.junit.platform:junit-platform-launcher' testImplementation 'org.java-websocket:Java-WebSocket:1.6.0' } test { useJUnitPlatform() } publishing { publications { mavenJava(MavenPublication) { artifactId = 'session-java' from components.java } } repositories { // Gitea package registry. Publish with a token that has package:write: // GITEA_TOKEN=... ./gradlew publish maven { name = 'Gitea' url = uri('https://git.selimaj.dev/api/packages/selimaj-dev/maven') credentials(HttpHeaderCredentials) { name = 'Authorization' value = "token ${findProperty('giteaToken') ?: System.getenv('GITEA_TOKEN') ?: ''}" } authentication { header(HttpHeaderAuthentication) } } } }