build.gradle
plugins { id 'java-library' id 'io.freefair.lombok' version '8.13.1' id 'jacoco' id 'org.sonarqube' version '6.1.0.5360' id 'maven-publish' id 'org.jreleaser' version '1.17.0'} java { sourceCompatibility = JavaVersion.VERSION_11 targetCompatibility = JavaVersion.VERSION_11 withJavadocJar() withSourcesJar()} group = 'com.globalreachtech'version = '2.2.1-SNAPSHOT' repositories { mavenCentral()} dependencies { implementation 'org.apache.logging.log4j:log4j-api:2.24.3' implementation 'io.netty:netty-codec-base:4.2.0.Final' implementation 'jakarta.xml.bind:jakarta.xml.bind-api:4.0.2' testImplementation 'org.apache.logging.log4j:log4j-core:2.24.3' testImplementation 'org.junit.jupiter:junit-jupiter:5.12.2' testImplementation 'org.mockito:mockito-junit-jupiter:5.17.0' testImplementation 'org.awaitility:awaitility:4.3.0' testImplementation 'org.assertj:assertj-core:3.27.3' testImplementation('net.jradius:jradius-core:1.1.5') { transitive = false // for reference implementation of hashing utilities } testRuntimeOnly 'org.junit.platform:junit-platform-launcher'} jacocoTestReport { reports { xml.required = true html.required = true }} sonarqube { properties { property "sonar.projectKey", "globalreachtech_tinyradius-netty" property "sonar.organization", "globalreachtech" property "sonar.host.url", "https://sonarcloud.io" property "sonar.exclusions", "'**/AttributeType*','**/PacketType*'" }} test { testLogging.showStandardStreams = true testLogging.exceptionFormat = 'full' useJUnitPlatform()} jreleaser { signing { active = 'ALWAYS' armored = true } deploy { maven { mavenCentral { sonatype { active = 'ALWAYS' url = 'https://central.sonatype.com/api/v1/publisher' stagingRepository('build/staging-deploy') } } } }} publishing { publications { mavenJava(MavenPublication) { groupId = group artifactId = project.name from components.java pom { name = project.name description = 'TinyRadius-Netty is a small Java Radius library' url = 'https://github.com/globalreachtech/tinyradius-netty' licenses { license { name = 'GNU Lesser General Public License, version 2.1' url = 'https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html' } } developers { developer { id = "horaceli" url = "https://github.com/horaceli" } developer { id = 'globalreachtech' organizationUrl = 'https://www.globalreachtech.com/' } } scm { url = 'https://github.com/globalreachtech/tinyradius-netty' } } } } repositories { maven { url = layout.buildDirectory.dir('staging-deploy') } }}