Thư viện gốc của Java Snappy (được tải qua JNI) được biên dịch dựa trên glibc. Alpine Linux (cái mà vùng chứa của bạn dựa trên) sử dụng musl libc tương thích với nguồn nhưng không tương thích nhị phân (về cơ bản có nghĩa là nếu bạn biên dịch thư viện gốc dựa trên musl thì nó sẽ hoạt động, nhưng nếu nó được biên dịch dựa trên glibc thì nó sẽ không hoạt động với xạ hương).
Bạn có ba tùy chọn:
- Cài đặt
java-snappy-native
(chứa thư viện gốc được xây dựng cho musl) trong vùng chứa Alpine của bạn và đặtorg.xerial.snappy.use.systemlib=true
(yêu cầu thư viện Java sử dụng thư viện gốc được cài đặt sẵn).Hiện tại, bạn cũng cần cài đặtsnappy
vì ai đó không thể thêm phần phụ thuộc đó vào gói trên. - Sử dụng vùng chứa cơ sở với glibc
- Cài đặt glibc trong vùng chứa Alpine của bạn (không thực sự được khuyến nghị)