Soru Ivy nedir? ve karınca ile ilgili nasıl?


Uygulamamın yapım projelerinde çok sayıda sarmaşık dosyası gördüm. Ivy ve karınca ile ilişkisi nedir?


18
2018-01-02 19:10


Menşei


ant.apache.org/ivy/features.html - Bozho


Cevaplar:


Sarmaşık geliştirme süreci sırasında harici kütüphaneleri yönetmek için bir Ant uzantısıdır, bunları sınıf yolunuza eklemenin bir yolunu sağlar, bunları uygulama yapınıza dahil etmek vb.

Maven'in yaptığıyla bir miktar örtüşüyor, ama Ivy çok daha hafif (ve fazla değil).


18
2018-01-02 19:13



Ivy, Maven Ant Görevleri ile rekabet eder (maven.apache.org/ant-tasks/index.html) ama kesinlikle Maven ile değil. - Pascal Thivent
Adil olmak gerekirse, onunla rekabet ettiğini söylemedim, onunla çakıştığını söyledim. - skaffman
Şey, Ivy, Bağımlılık bağımlılığı ele geçirme mekanizmasının bir Ant limanıdır, elbette bir çeşit “örtüşme” vardır. Ama yine de, onları karşılaştıramazsın. - Pascal Thivent


Ivy aslında bir Jayasoft.fr ürünü o zamanlar BSD lisansı altındaydı, ancak Ivy'nin çekirdeği her zaman aynıydı: bağımlılık yönetimi aracı.

Ivy'nin Karınca ile olan ilişkisi, onun Ant'den geçtiği bir Ant uzantısı olmasıdır, ancak aslında ona bağlı değildir (bariz parçaların ötesinde). Ivy, 11 Ekim 2007'de kuluçka süreciyle alt proje olarak Ant'in altında bir Apache projesine birleştirildi.

İnsanların sahip oldukları çok yaygın yanlışlık, Ivy'yi bir bütün olarak Maven'le karşılaştırmalarıdır. Bununla birlikte, Ivy'nin bağımlılıkları sadece çevik bir şekilde ele almasından ve çalışmasından çok daha iyi olduğu için, Maven gerçekten kendi içinde bir inşa sistemi iken, çeşitli yapılandırma sistemleri vb. Kişisel görüşler, hangisinin en iyi yaptığı ve farklı Stackoverflow / Google aramalarının hangisi olduğuna göre farklılık gösterebilir.


4
2018-01-02 20:06





Sarmaşık bir bağımlılık yöneticisidir - projenizin bağlı olduğu JAR dosyalarını yönetir ve denetler. JAR'lara sahip değilseniz, o zaman onları senin için aşağı çek proje kurulumunu çok daha kolaylaştırabilecek varsayılan olarak (Maven 2 deposundan).


3
2018-01-02 19:13



Çoğu uzak ivy / maven reposunun korkunç derecede bozuk ve eksik olması dışında. - skaffman
@skaffman Gerçekler lütfen? - Pascal Thivent
@Pascal - deneyimim @ skaffman'ın iddiasına uyuyor. Mesela Maven'i kullanmaya başladığımda J2EE api JAR'larının "doğru" versiyonlarını bulmakta çok zorlandım ve OAIcat'ı bulmaya çalıştım. Ayrıca, "dışlama" geçici çözümler gerektiren kötü bağımlılıklarla da karşılaşıyorum. Ancak, benim için Maven tarzı bağımlılıkların faydaları bu sorunlara ağır basıyor. - Stephen C
@Stephen Saat kaçtı? Java / J2EE kavanozlarıyla ilgili sorun, başka bir şeyden daha fazla bir lisans meselesiydi ve Java.net deposuyla uzun zamandır çözülmüştür. Kötü meta verilerle ilgili olarak, herhangi bir son kötü bir deneyim? Her neyse, ciddi bir kurumsal proje, kurumsal bir depo kullanmalı ve kamuya ait şeylere güvenmemelidir. Yani hayır, ben aynı fikirde değilim. - Pascal Thivent


Bunların eklenmesi gereken önemli ve yararlı noktalar olduğuna inanıyorum:

  • Ivy, Ant olmadan komut satırından bağımsız olarak kullanılabilir. CI ortamınız Ant içermezse, Ivy'yi kullanmanızı engellemez. Evet, Ant ile bütünleşme güzel ve şimdiye kadar daha iyi belgelendi. Bununla birlikte, Ant entegrasyon belgelerini bağımsız kullanıma da uygulayabiliriz.
  • Ivy sadece Java için değil. Ekibim, oldukça geniş bir .NET projesi için bağımlılıkları tanımlamak için onu başarılı bir şekilde kullanmaktadır (üretimde her biri birden çok üçüncü taraf üst düzey bağımlılığa sahip olan birden fazla versiyona sahip 10 bağımlı paket). Oldukça iyi çalışıyor. Keşke belgeler biraz daha açık ve dolgundu.
  • Ivy'nin Build Time için sunduğu ek avantajlar vardır: yukarı ve aşağı yönde tetikleme oluşturur.

1
2017-07-08 15:11