https://github.com/easel/shading-reproで簡単な再現プロジェクトをまとめました
基本的な要点は、.inAllを使用すると、シェイプレス*が適切にシェーディングされますが、.inProject.inLibrary()を使用しようとすると、シェーディングされません。 明らかに間違っている可能性はありますが、運が悪かったので、さまざまな組み合わせや注文などを試したので、この時点でどのように混乱しているのでしょうか。
どんな洞察もありがたいです!
さて、テストが失敗するまで、これを追跡しました。 根本的な問題は、ライブラリマッチングコードにscalaライブラリの_2.11サフィックスが含まれていないことです。 これは、jarファイルからmoduleIdを取得しようとするためです。これには、明らかに_2.11サフィックスが含まれていません。
とにかく、回避策があります。「com.chuusai」%%「shapeless」の代わりに「com.chuusai」%「shapeless_2.11」を使用してください。
探偵の仕事をありがとう。
役立つ場合は、シェーディングテストに変更をプッシュして失敗させることができます。 モジュールIDのルックアップと比較を調整するのに最適な場所を追跡しようとしましたが、結局、たくさんの盲目の路地を下り、回避策= pを支持してそれをあきらめました。
私は実際に修正を加えて、どこにあるかについてのいくつかの指針を私に与えることができればそれをプッシュするのにかなり良い立場にあります。
私はこれをたくさん必要としていました。 Elastic4s-awsでaws-java-sdk-coreをシェーディングするための_2.11サフィックスを使用しても機能しないため、.inAllでシェーディングする必要があります
最も参考になるコメント
さて、テストが失敗するまで、これを追跡しました。 根本的な問題は、ライブラリマッチングコードにscalaライブラリの_2.11サフィックスが含まれていないことです。 これは、jarファイルからmoduleIdを取得しようとするためです。これには、明らかに_2.11サフィックスが含まれていません。
とにかく、回避策があります。「com.chuusai」%%「shapeless」の代わりに「com.chuusai」%「shapeless_2.11」を使用してください。