Oldukça büyük bir Maven projesi üzerinde çalışıyorum. Muhtemelen yaklaşık 70 ayrı yapımız var, bunlar kabaca iki paylaşılan kod kitaplığına ve belki de bunları kullanan on uygulamaya ayrılıyor. Bu öğelerin tümü ad alanında yaşar com.mycompany.*
.
Çoğu zaman anlık görüntü yapılarına karşı koşuyoruz. Bu nedenle, bir uygulamanın tam derlemesini yapmak için, önce kütüphane projelerini yerel depoma yüklenecek şekilde oluşturabilirim (örneğin, mycompany-libname-2.4-SNAPSHOT.jar
).
Sorun şu ki, o zaman uygulamaları oluşturmaya gittiğimde. Bazı nedenlerden dolayı Maven, tüm mycompany-*-SNAPSHOT.jar
eserlerin güncellemeleri için ana iki genel depoyu (maven-net-repo ve java-net-repo) kontrol etmek istiyor . Tabii ki, orada bulunmazlar ve her şey sonunda yerel depomda oluşturduğum sürümlere geri döner, ancak Maven'in bunu yapmayı bırakmasını isterim çünkü (a) bu beni kötü bir ağ gibi hissettiriyor. Citizen asla orada olmayacak şeyler için bu depoları sürekli kontrol etmek ve (b) oluşturma sürecime bazı gereksiz ve can sıkıcı ağ gecikmeleri ekler.
Bu sorunu çözmek için çoğu zaman çevrimdışı modda maven çalıştırmaya başladım, ancak bu ideal değil çünkü bazen bir halk kütüphanesine olan bağımlılık güncellenecek. Yani aradığım şey, Maven'in belirli kriterleri karşılayan eserler için belirli depolardan güncellemeleri kontrol etmemesine neden olacak bir çözüm - bu durumda Maven, SNAPSHOT sürümlerini veya içinde bulunan eserleri görmezden gelirse mutlu olurum. com.mycompany
ad.