Normalde böyle bağımlılıkları yok varsayılan edilebilir: senin kavanoza derlenmiş
compile rootProject.ext.okhttp
sadece kaynaklarıdır. Yani OkHttp sınıfları senin lib'inde olmayacak.
Bende aynı durum var. Maven'i kurmak ve yüklemek için kürek kullanırım. Sen niyeti paketinde kesin borç sürümü olması ve sadece bir modül olarak ve OkHttp pakete gibi bazı şeyleri değiştirmek için proje dahil etmek gerek gizli edilecek Yani eğer here
kontrol edebilirsiniz çakışmalardan ve ayrıca kamuya açık okhttp üyelerine erişimden kaçının. OkHttp Okio'yu kullanıyor, böylece özelleştirmeyi de isteyebilirsiniz.
Gölgeli sınıfın bu tür gölgeleme + gizleme işlevselliğinin çerçeve bağımlılıkları için yararlı olabileceğini unutmayın (çalışma zamanında tüm borçları garantilemekle birlikte), ancak lib'larınızın boyutunu artırmaktadır ve uygulamaların kullanımı için en iyi seçenek olmayacaktır. lib'iniz, paketlemede gerekli olan şeylerin, yine de, paketteki gerekli borçları sağladığından emin olun.
Son hedefiniz nedir?Kütüphane kullanıcılarının kütüphaneniz aracılığıyla OkHttp'ye erişmelerini kısıtlasanız bile, yine de derleme bağımlılığı olarak OkHttp'yi ekleyebilir ve kullanabilirler. Peki tam olarak ne elde etmeye çalışıyorsun? – RaGe
Android kütüphanenizi aar olarak mı paketliyorsunuz? OkHttp'i aar'ınızla mı paketliyorsunuz? ya da pom.xml'de tanımlanan geçiş bağımlılığı mı? – RaGe
@RaGe İnsanların zaten bir derleme bağımlılığı olarak OkHttp'ye sahip olmalarını veya eklemeyi düşünebileceklerini umuyorum. Ayrıca, OkHttp'nin farklı bir sürümünü ekleyerek/kullanacak olma ihtimali de var. Bu yüzden, kütüphanemdeki sürümü kullanmasını istemiyorum. Kütüphanem paketlenmiş, ancak bintray paketleri paketliyor ve insanlar onu bir bağımlılık olarak kullanıyorlar. OkHttp kütüphanemde gizli bir bağımlılık var – CQM