citrusframework / citrusframework/citrus
Nested jar support broken
- Dominant language
- Java
- Stars
- 485
- Forks
- 155
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 7
Description
**Citrus Version**: 5.0.1
**Expected behavior**
Citrus dependencies can be loaded from a nested jar.
**Actual behavior**
Starting the Citrus runtime from a nested jar fails with
java.nio.file.InvalidPathException: Illegal char <:> at index 5: ested:/path/to/fat.jar/!BOOT-INF/lib/citrus-api-5.0.1.jar!
**Reason**
ResourcePathReferenceResolver assumes the prefix file:, but is actually jar:nested:
https://github.com/citrusframework/citrus/blob/v5.0.1/core/citrus-api/src/main/java/org/citrusframework/spi/ResourcePathTypeResolver.java#L118
Contributor guide
Research direction
Start at ResourcePathTypeResolver.java around line 118 and reproduce the Citrus runtime failure when dependencies are loaded from a nested jar. Trace how the jar:nested: resource path is resolved, then verify that the runtime can load citrus-api from the nested jar without InvalidPathException.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- backend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 75/100