Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 11769|Yanıt: 0

[Kaynak] Maven projeleri projeleri ve bağımlılıkları ayrı paketler

[Bağlantıyı kopyala]
2022-3-11 tarihinde yayınlandı 17:19:28 | | | |
Gereksinimler: Yeni bir Spring Boot projesini yönetmek için maven kullanın, geliştirme tamamlandığında proje ve bağımlılıklar bir jar dosyasına paketlenir, dosya boyutu 160M'den fazladır, her güncelleme yayınlandığında (sadece bir kod satırı değiştirilse bile), 100 MB'den fazla dosyayı sunucuya yüklemeniz gerekir, bu da yüklemesi 5 dakika sürer, bu da bant genişliği ve zaman kaybı anlamına gelir.

Analiz: Büyük kavanoz dosyasının sebebi esas olarak bağımlılıklardırBirçok üçüncü taraf bağımlılık ortaya çıkarAslında, projenin kendisi tarafından yazılmış çok fazla kod yok. Yeni projelerinizi ve üçüncü taraf bağımlılıklarınızı ayrı nasıl paketlersiniz? Üçüncü taraf bağımlılıkları ayrı bir klasöre gönderin, sonuçta üçüncü taraf bağımlılıklar genellikle güncellenmez.

Varsayılan paket pom.xml dosya yapılandırması aşağıdaki gibidir:

kullanmakMVN Clean PackageKomut paketlendikten sonra jar dosyası:



pom.xml dosyasını aşağıdaki yapılandırmayla değiştirin:

Not!!!Dahil olmak ise projenizin modülünü tamamen eklemeli, yani yeni oluşturduğunuz modülü bir jar dosyasına paketlemelisiniz.

Aşağıdaki görselde gösterildiği gibi mvn clean package komutuyla yeniden paketleyin:



Kendi projenizi paketledikten sonra, itsvse-0.0.1-SNAPSHOT.jar dosya geri dönüyor1M'den az, tüm üçüncü taraf bağımlılıkları bir lib klasörüne paketliyor ve sadece güncelleme sırasında itsvse-0.0.1-SNAPSHOT.jar güncellemesi gerekiyor (yeni üçüncü taraf bağımlılıkların eklenmesini dikkate almadan).

Proje başlatma komutu şöyledir:


Referans makaleler:

Spring Boot Maven Eklentisi Dokümantasyonu:https://docs.spring.io/spring-bo ... ference/htmlsingle/
Apache Maven Dependency Plugin:https://maven.apache.org/plugins ... n/sources-mojo.html
https://blog.csdn.net/weixin_35971547/article/details/90521411
https://www.jianshu.com/p/138f98f684d3





Önceki:Linux ssh: komut bulunmadı
Önümüzdeki:Elasticsearch, disk alanı boşaltmak için indeksleri otomatik olarak temizler
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com