Maven: POM'ye bağımlılık ekledikten sonra havuzu güncelleme komutu


256

POM'uma yeni bir bağımlılık ekledim.

Depomuza bu bağımlılığı indirmek için çalıştırabileceğim basit bir komut var mı?


Bir Spring Boot projesinde bunun nasıl yapılacağını arayanlar için: mvnwsarma katmanını çağırmak için kullanın . Bu sayfadaki komutlar onunla çalışır.
G_V

Yanıtlar:


179

mvn install(veya mvn package) her zaman çalışır.

mvn compileDerleme zamanı bağımlılıkları indirmek veya mvn testzaman ve test bağımlılıkları derlemek için kullanabilirsiniz , ancak her zaman çalışan bir şey tercih ederim.


2
Teşekkürler, ayrıca STS'deki pom'a eklemenin sizin için otomatik olarak indireceğini keşfettim.
JJ180

15
@Andrew Spencer'ın cevabı daha doğrudur - mvn dependency:xxxsadece bağımlılıklar ile ilgilenin ve başka şeyler yapmayın - ve sorunun ne olduğu hakkında.
botchniaque

Bazen 'mvn package' bağımlılıkları güncellemeyebilir. Bir kereden fazla başıma geldi. Böyle durumlarda 'mvn bağımlılığı: çözmek' gerekiyor
Binita Bharati

1
@BinitaBharati, bağımlılık yüklemelerini zorlamak için Maven komut satırına bir -U ekleyebilirsiniz. Maven önbellek zaman aşımı nedeniyle güncellenmiş bir bağımlılık indirmezse bu yararlıdır.
BamaPookie

1
@Kishan Yeni bir soru sor. Projenizin düzenini (özellikle nerede importolur) ve çok modüllü bir yapı kullanıp kullanmadığınızı gösterin .
Aaron Digulla

611

Bağımlılıkları yalnızca başka bir şey yapmadan indirmek istiyorsanız , o zaman:

mvn dependency:resolve

Veya tek bir bağımlılık indirmek için:

mvn dependency:get -Dartifact=groupId:artifactId:version

Belirli bir havuzdan indirmeniz gerekiyorsa, -DrepoUrl=...


2
Bu komutu çalıştırdığımda bu hatayı alıyorum: [HATA] Hedef org.apache.maven.plugins yürütülemedi: maven-bağımlılık-eklentisi: 2.1: proje bağımsız-pom üzerinde get (default-cli): 'repositoryUrl' parametreleri goal org.apache.maven.plugins: maven-bağımlılık-eklentisi: 2.1: get eksik veya geçersiz -> [Yardım 1]. -DrepositoryUrl = ... belirtmek işe yaramaz.
Chry Cheng

1
Sanırım çözümü buldum. Parametre, "repositoryUrl" değil, "repoUrl" olmalıdır.
Chry Cheng

Benim için sorunu çözmez: mvn package -ohemen sonra çalıştırıyorum - eklentilerin indirilemediğini alıyorum. Koşu mvn dependency:resolve-pluginsda sorunu tam olarak çözmez.
Innokenty

Havuz URL'leriniz eksik / yanlış olabilir. Her durumda, bu cevabın yaşadığınız sorunun cevabı olduğunu düşünmüyorum. Bu cevap, Maven'in yapılandırılmış depolarda ihtiyaç duyduğu tüm eserleri bulabileceği durumu kapsar.
Andrew Spencer

Bir inanan olup olmamanın umrunda değilim, bir hıristiyan olup olmadığın ... Tanrı seni bu müthiş basit cevabı kutsasın.
Salathiel Genèse

12

Artık eski bir soru olduğunu biliyorum, ancak altında Maveneklenti kullanan kullanıcılar için iki seçeneğiniz var:EclipseWindows

  1. Maven'i bağımsız bir uygulama olarak yüklediyseniz:

    CMDProje yolunuzun altında aşağıdaki komutu kullanabilirsiniz :

    mvn eclipse:eclipse

    pom.xmlDosyanızdaki bağımlılıklarınıza göre deponuzu tüm eksik kavanozlarla güncelleyecektir .

  2. Maven'i bağımsız bir uygulama olarak yüklemediyseniz, tutulması sırasında şu adımları takip edebilirsiniz:

    project-> Run As-> simgesine sağ tıklayın Run configurations.

    Ardından öğesini seçin mavenBuild.

    Ardından new, seçilen türde bir yapılandırma oluşturmak için düğmesine tıklayın . Gözat çalışma alanına tıklayın, ardından projenizi seçin ve hedeflerde belirtineclipse:eclipse

Daha fazla bilgi için mvn eclipse: eclipse komutunun nasıl çalıştırılacağına bakabilirsiniz.


3
Eclipse Koşu: bağımlılıktan sonra eclipse: çözmek bana tutulma indirilen kavanozları görmek yardımcı oldu, teşekkürler!
Anatoly Yakimchuk

2
Bu cevap Eclipse ile sıkışan fakir halkın yardımcı olmasına rağmen, Eclipse kullanan herkesin daha iyi bir alternatif bulmasını şiddetle tavsiye ederim. Özellikle Maven kullanacaksan. Netbeans ve IntelliJ ışık yılı ilerisinde.
64BitBob

@ 64BitBob Netbeans ve IntelliJ'in tutulmadan daha iyi olduğunu varsayarsak, bunu kullananlara her zaman bir çözüm vermeliyiz. :)
cнŝdk

Eklentinin artık pazarda mevcut olmadığını görüyorum, ancak evet hiçbir şey indirmeden Eclipse 2020'de çalışıyor. Ben mvn Tutulma acaba: Tutulma Tutulma kendisi tarafından gönderilen komut olduğunda biz rightclick-> Maven-> Güncelleme Projesi ...
Paolo

@Paolo Bence Eclipse yeni sürümlerinde eklentiyi otomatik olarak eklediler ve evet "Proje güncelle" seçeneğinin arkasında aynı komut olduğunu düşünüyorum.
cнŝdk

1

Bağımlılık kapsamınıza dikkat edin Intellij yoluyla temiz derlemeyi çağırdığımda pom'un indirileceği, ancak kavanozun olmayacağı sorunu yaşıyordum. Bir xxx.jar.lastUpdated dosyası oluşturuldu. Sonra bağımlılık kapsamının test edildiğini fark ettim ama derlemeyi tetikliyordum. Depoları sildim ve mvn testini tetikledim ve sorun çözüldü.


-4

Sağ, projeye tıklayın. Maven -> Projeyi Güncelle'ye gidin.

Bağımlılıklar otomatik olarak yüklenecektir.


Eclipse'de böyle yapılır.
user1364368

bazen, ve sonuçta, bu iş uzakta değil, mvn paketi, yükleme, bağımlılık gibi bazı komutlar: çözmek sorununuzu çözebilir
Sham Fiorin
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.