Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Add support for shading

Open
#166 1 comment 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
35/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Stale
Tech stack
java
Domain
build-system

Research direction

Start by examining software.amazon.awssdk.crt.CRT#awsCrtInit and the native library loading path that produces UnsatisfiedLinkError. Compare the issue's Netty examples, then define a solution that supports renamed Java classes and native libraries while allowing multiple shaded versions to coexist.

Written by the indexing model from the issue text.

Description

feature-request needs-review p3

It's currently not possible to shade aws-crt-java (rename its class files and native libraries and embed them into my own artifact). Renaming the class files itself works, but an UnsatisfiedLinkError is raised in software.amazon.awssdk.crt.CRT#awsCrtInit.

An ideal shading solution would allow for us to rename both the native libraries and the Java classes. As an example, Netty allows consumers to shade their classes and native libraries. They support a system property to allow customers to specify the prefix given to the libraries, though they later added support for automatically detecting the prefix. They also had to take special care to make sure multiple shaded versions of their library could coexist peacefully.

Dominant language
Java
Stars
76
Forks
46
Avg merge
5h 58m
Merged PRs (30d)
1

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from awslabs/aws-crt-java

All issues in awslabs/aws-crt-java

Similar issues

More Java issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.