{"id":25806007,"url":"https://github.com/alipsa/nexus-release-plugin","last_synced_at":"2026-04-01T17:40:43.767Z","repository":{"id":206799854,"uuid":"717728843","full_name":"Alipsa/nexus-release-plugin","owner":"Alipsa","description":"Automates the release process to release to maven central","archived":false,"fork":false,"pushed_at":"2026-03-18T21:36:59.000Z","size":223,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-03-19T07:51:30.944Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Groovy","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Alipsa.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-11-12T12:04:43.000Z","updated_at":"2026-03-18T21:37:03.000Z","dependencies_parsed_at":"2024-10-31T11:24:52.232Z","dependency_job_id":"f72bad65-1784-4b4b-9f3b-3745d060eba3","html_url":"https://github.com/Alipsa/nexus-release-plugin","commit_stats":null,"previous_names":["pernyfelt/nexus-release-plugin","alipsa/nexus-release-plugin"],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/Alipsa/nexus-release-plugin","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Alipsa%2Fnexus-release-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Alipsa%2Fnexus-release-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Alipsa%2Fnexus-release-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Alipsa%2Fnexus-release-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Alipsa","download_url":"https://codeload.github.com/Alipsa/nexus-release-plugin/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Alipsa%2Fnexus-release-plugin/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31290539,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-01T13:12:26.723Z","status":"ssl_error","status_checked_at":"2026-04-01T13:12:25.102Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-02-27T19:52:36.785Z","updated_at":"2026-04-01T17:40:43.758Z","avatar_url":"https://github.com/Alipsa.png","language":"Groovy","funding_links":[],"categories":[],"sub_categories":[],"readme":"# nexus-release-plugin\n\n[![CI](https://github.com/Alipsa/nexus-release-plugin/actions/workflows/ci.yml/badge.svg)](https://github.com/Alipsa/nexus-release-plugin/actions/workflows/ci.yml)\n[![Java](https://img.shields.io/badge/Java-17+-blue)](https://docs.oracle.com/en/java/javase/17/)\n[![Groovy](https://img.shields.io/badge/Groovy-4.0.30-blue)](https://groovy-lang.org/)\n[![Javadoc](https://javadoc.io/badge2/se.alipsa.nexus-release-plugin/se.alipsa.nexus-release-plugin.gradle.plugin/javadoc.svg)](https://javadoc.io/doc/se.alipsa.nexus-release-plugin/se.alipsa.nexus-release-plugin.gradle.plugin)\n\nAutomates the release process to Sonatype Central.\n\nAssumptions are:\n1. It assumes you use the maven publish plugin to define your artifacts\n2. Any subproject (module) can use it in contrast to the nexus publish plugin which must be applied on the root project, allowing you to publish modules independently.\n\nTo use it you need to add your sonatype username token and password token to\n~/.gradle/gradle.properties, e.g:\n\n```properties\nsonatypeUsername=myUserToken\nsonatypePassword=myPassw0rdToken\n```\nAlternatively, you can set them as system properties or as environment variables.\n\nThen you use the plugin in your build.gradle as follows:\n```groovy\n\nplugins {\n  // your other plugins...\n   id 'signing'\n   id 'maven-publish'\n   id 'se.alipsa.nexus-release-plugin' version '2.1.2'\n}\n\npublishing {\n  publications {\n    maven(MavenPublication) {\n      from components.java\n\n      artifact(javadocJar)\n      artifact(sourcesJar)\n      pom {\n        name = 'Your project name'\n        description = \"${project.description}\"\n        url = \"https://github.com/yourGroup/yourProject\"\n        licenses {\n          license {\n            name = 'MIT License'\n            url = 'https://raw.githubusercontent.com/yourGroup/yourProject/main/LICENSE'\n          }\n        }\n        developers {\n          developer {\n            id = 'nn'\n            name = 'Full Name'\n          }\n        }\n        scm {\n          url = 'https://github.com/yourGroup/yourProject/tree/main'\n          connection = 'scm:git:https://github.com/yourGroup/yourProject.git'\n          developerConnection = 'scm:git:https://github.com/yourGroup/yourProject.git'\n        }\n      }\n    }\n  }\n}\n\nnexusReleasePlugin {\n   userName = sonatypeUsername\n   password = sonatypePassword\n   mavenPublication = publishing.publications.maven\n}\n```\n\nThe plugin adds these tasks:\n\n- `bundle`: creates the Maven Central bundle from the configured publication.\n- `release`: validates and uploads the bundle to Central Portal.\n- `latestMavenVersions`: lists the latest published version for the current project, and when run on the root project also for published subprojects that use this plugin.\n\nIf you want to publish to another url that behaves just like the Central Publishing API, you \ncan set the property `nexusUrl` in the nexusReleasePlugin e.g:\n\n```groovy\nnexusReleasePlugin {\n   nexusUrl = \"https://central.sonatype.com/api/v1\"\n   userName = sonatypeUsername\n   password = sonatypePassword\n   mavenPublication = publishing.publications.maven\n}\n```\n\nIf you need `latestMavenVersions` to query another Maven-compatible repository, set `metadataBaseUrl`:\n\n```groovy\nnexusReleasePlugin {\n   metadataBaseUrl = \"https://repo1.maven.org/maven2\"\n   mavenPublication = publishing.publications.maven\n}\n```\n\n## Building the Plugin\n\n```bash\n./gradlew build                  # Build and test\n./gradlew publishToMavenLocal    # Publish to local Maven repo\n```\n\n## License\n\nMIT License - see [LICENSE](LICENSE) for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falipsa%2Fnexus-release-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falipsa%2Fnexus-release-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falipsa%2Fnexus-release-plugin/lists"}