2016-02-12 18 views
11

mvnrepository zwykle zawiera "wersję" i "aktualizacje" dla każdej zależności.Zależności Mavena - wersja vs aktualizacje

  1. Jeśli mam publikując własną paczkę, jak mogę określić „aktualizacji” wersja
  2. Które dependancy ma Maven używany podczas rozwiązywania zależności przechodnie? Więc jeśli mój pakiet zależy od pakietu A, który zależy od pakietu B z - version = 1.0 i updates = 1.1. Którą wersję B otrzymam?
+0

Zdefiniujesz więc, że zależy to od pakietu A (wersja?), Który zależy od pakietu B (wersja 1.0). Więc otrzymasz wersję 1.0 pakietu B, jeśli nie zastąpisz go w pakiecie ... zdefiniuj zależności w pliku pom, który jest sprawdzany w kontrolce wersji, co oznacza, że ​​to się nie zmieni, dopóki nie zmienisz pliku pom ... Może to źle zinterpretować pytanie? Jeśli chcesz zaktualizować, musisz zmienić wersję pakietu A (inna wersja) ..? – khmarbaise

+0

O czym mówią "aktualizacje"? Na przykład http://mvnrepository.com/artifact/com.github.valdr/valdr-bean-validation/1.1.2, gdzie widzisz "aktualizacje"? –

+0

@ MarcelStör: jackson-databind to wersja 2.4.0, aktualizacje 2.7.1-1 – EugeneMi

Odpowiedz

23

W końcu rozumiem twoje pytanie. Byłoby pomocne, gdybyś dał nam konkretny przykład od samego początku. Pytasz, jakie znaczenie mają informacje w kolumnie "Aktualizacje" tabeli "Zależności kompilacji" MVNRepository.

enter image description here

To pokazuje, czy istnieje zaktualizowana wersja określonego zależnością dostępne, a jeśli tak, jaka jest najnowsza wersja. Jeśli istnieje znacznik wyboru, oznacza to, że biblioteka, o której mowa, używa już najnowszej wersji zależności X. Zawsze otrzymasz zadeklarowaną wersję zależności niezależnie od wersji najnowszej.

Dlatego jeśli korzystasz z valdr-bean-validation 1.1.2, otrzymasz również jackson-databin 2.4.0 jako zależność przechodnią. 2.7.1-1 byłaby najnowszą dostępną wersją jackson-databin.