Kafkaを使用する Android アプリに取り組んでいます。大量の依存関係があるため、Ivy を使用してそれらを管理することにしました (ただし、Ivy を使用したことはなく、一般的に Apache については経験がありません)。
私の問題は、Kafka の依存関係の 1 つであるsnappy-javaに、Linux、Mac、および Windows 用のネイティブ ライブラリを含む「ネイティブ」フォルダがあり、Android がエラーをスローしていることですThe library 'snappy-java-1.0.4.1.jar' contains native libraries that will not run on the device.
。 -java jar、native
フォルダーなしでソースから再コンパイルし、プロジェクトに戻します。Ivy が自動的にビルドするので、ファイル経由で行う必要があると思いivy.xml
ますが、方法がわかりません。
フォルダを依存関係から直接除外しようとしています:
<dependency org="org.xerial.snappy" name="snappy-java" rev="1.0.4.1" conf="compile->default(compile)">
<exclude org="org.xerial.snappy" module="snappy-java/native" name="*" type="*" ext="*" matcher="exact"/>
</dependency>
しかし、これは何も変わりません。の Ivy ドキュメントを見てきましたが、<exclude>
推移的な依存関係を除外するため、またはモジュール全体を除外するためのようです。より具体的に取得することは可能ですか?
<conf>
snappy-javaのivyファイルをいじってそれを行う方法があるよう<artifact>
ですが、私はそれを機能させることができませんでした.とにかくIvyはそれらのファイルを自動的に生成すると思います. 誰かが私を正しい方向に向けることができますか? 前もって感謝します。