apache / apache/iceberg

Issue: jarsigner Unable to Sign Apache Iceberg JARs

Open
#16,949 2 comments 0 reactions 0 assignees View on GitHub
bug
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.