fix: remove stale 2015 biz.aQute.launcher jar breaking bnd export (release.yml)#48
Merged
Merged
Conversation
cnf/buildrepo/biz.aQute.launcher/biz.aQute.launcher-latest.jar (Bundle-Version 3.0.0.201509101327, 2015) was served by bnd's Build FileRepo and selected for the export runpath. Its ProjectLauncherImpl.executable() calls Project.addClose(Closeable), a method removed in modern bndlib, so :pnnl.goss.core.runner:export.goss-core threw NoSuchMethodError. This broke the release.yml build-artifacts step for v15.0.3, v15.0.2, and v12.1.0. Deleting the vestigial jar lets bnd use the plugin's embedded biz.aQute.launcher-7.1.0, which matches the bndlib. Verified: export.goss-core BUILD SUCCESSFUL, produces a valid executable goss-core.jar.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
.github/workflows/release.yml's "Build release artifacts" step (the bndexport.goss-coretask) has failed for every release: v15.0.3, v15.0.2, and v12.1.0 all died there, so no GitHub release with artifacts has ever published from this workflow.Root cause
A stale checked-in launcher,
cnf/buildrepo/biz.aQute.launcher/biz.aQute.launcher-latest.jar(Bundle-Version 3.0.0.201509101327, from 2015), is served by bnd's Build FileRepo and selected for the export runpath. ItsProjectLauncherImpl.executable()callsvoid Project.addClose(Closeable), a method removed in modern bndlib, so the export throwsNoSuchMethodError. This is not a Gradle 9 issue (release.yml already uses the pinned./gradlew8.10 wrapper); the failure reproduces locally at 8.10.Fix
Delete the vestigial jar. Nothing references it (grep across all
.bnd/.bndrun/.gradleis clean; the FileRepo is a directory scan with no index to dangle). With it gone, bnd falls back to the bnd plugin's embeddedbiz.aQute.launcher-7.1.0, which matches the bndlib. No workflow edit, no plugin bump.Verification
./gradlew :pnnl.goss.core.runner:export.goss-coreBUILD SUCCESSFUL locally, producing a valid 14.6MBgoss-core.jarwithMain-Class: aQute.launcher.pre.EmbeddedLauncherand the embedded 7.1.0 launcher. Reviewed and approved (Dutch): unreferenced, FileRepo-safe, no non-export consumer, deletion correct over replace.Note
The v15.0.3 tag is frozen without this fix; the release will be cut as v15.0.4 off develop after this merges. Follow-up worth considering: whether
cnf/buildreposhould carry any launcher at all, since the plugin supplies the right one.