Issue: jarsigner Unable to Sign Apache Iceberg JARs
- Dominant language
- Java
- Stars
- 9.2k
- Forks
- 3.5k
- Avg merge
- 2d 16h
- Merged PRs (30d)
- 129
Description
### Apache Iceberg version
1.11.0 (latest release)
### Query engine
Flink
### Please describe the bug 🐞
The Java jarsigner tool is failing to sign the following Apache Iceberg JAR files:
iceberg-aws-bundle 1.11.0 :https://mvnrepository.com/artifact/org.apache.iceberg/iceberg-aws-bundle/1.11.0
iceberg-flink-runtime-2.1 1.11.0 : https://mvnrepository.com/artifact/org.apache.iceberg/iceberg-flink-runtime-2.1/1.11.0
Error encountered during signing:
java.util.zip.ZipException: duplicate entry: LICENSE
Description:
When attempting to sign the above JARs using jarsigner, the process fails with a ZipException indicating a duplicate entry for LICENSE within the JAR archive. This is likely caused by the JAR being an uber/fat JAR (a bundled JAR that merges multiple dependencies), which may contain duplicate LICENSE files from different bundled libraries, making it non-compliant with the ZIP specification and incompatible with the jarsigner tool.
### Willingness to contribute
- [ ] I can contribute a fix for this bug independently
- [ ] I would be willing to contribute a fix for this bug with guidance from the Iceberg community
- [x] I cannot contribute a fix for this bug at this time
Contributor guide
Research direction
Start by reproducing the jarsigner failure on the iceberg-aws-bundle and iceberg-flink-runtime-2.1 1.11.0 artifacts, then trace their uber JAR packaging configuration. Check how duplicate LICENSE entries are assembled and verify that rebuilt artifacts can be signed successfully without the duplicate-entry error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- build-system, release
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 38/100