[Java] Provide guidance in documentation for using Arrow in an uberjar setting
- Dominant language
- Java
- Stars
- 94
- Forks
- 152
- Avg merge
- 3d 16h
- Merged PRs (30d)
- 11
Description
Currently, ArrowBuf class directly access the package-private fields of AbstractByteBuf class which makes shading Apache Arrow problematic. If we relocate io.netty namespace excluding io.netty.buffer.ArrowBuf, it would throw out IllegalAccessException.
**Reporter**: [Jingyuan Wang](https://issues.apache.org/jira/browse/ARROW-799) / @alphalfalfa
#### Related issues:
- [[Java] Make Arrow library more shade-friendly](https://github.com/apache/arrow/issues/16325) (relates to)
**Note**: *This issue was originally created as [ARROW-799](https://issues.apache.org/jira/browse/ARROW-799). Please see the [migration documentation](https://github.com/apache/arrow/issues/14542) for further details.*
Contributor guide
Research direction
Start with the migration documentation linked in the issue and review the ArrowBuf and AbstractByteBuf shading interaction described there. Document how to use Arrow in an uberjar, including the io.netty relocation constraint and the IllegalAccessException scenario; done means the workaround is clear to users.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100