Bir Spring Boot uygulaması oluşturduğumda projenin kökündeki dosyaları mvnwve mvnw.cmddosyaları görebiliyordum . Bu iki dosyanın amacı nedir?
Bir Spring Boot uygulaması oluşturduğumda projenin kökündeki dosyaları mvnwve mvnw.cmddosyaları görebiliyordum . Bu iki dosyanın amacı nedir?
Yanıtlar:
Bu dosyalar Maven sarıcıdan . Gradle sargıya benzer şekilde çalışır .
Bu, Maven'i yolda kurup sunmadan Maven projesini çalıştırmanıza izin verir. Bulunmazsa doğru Maven sürümünü indirir (varsayılan olarak kullanıcı ana dizininizde bildiğim kadarıyla).
mvnwDosya Linux (bash) içindir ve mvnw.cmdWindows ortamında içindir.
Gerekli tüm Maven Wrapper dosyalarını oluşturmak veya güncellemek için aşağıdaki komutu yürütün:
mvn -N io.takari:maven:wrapper
Maven'in farklı bir sürümünü kullanmak için sürümü aşağıdaki gibi belirleyebilirsiniz:
mvn -N io.takari:maven:wrapper -Dmaven=3.3.3
Her iki komut üzerinde maven gerektiren PATH(maven yolunu eklemek biniçin Pathzaten kullanabilirsiniz projenizde mvnw varsa Sistem Değişkenler'i) ./mvnwyerine mvnkomutları.
Komut mvnw, varsayılan ~/.m2/wrapperolarak ilk kullanımda indirilen Maven'i kullanır.
Maven ile URL her projede şu adreste belirtilir .mvn/wrapper/maven-wrapper.properties:
distributionUrl=https://repo1.maven.org/maven2/org/apache/maven/apache-maven/3.3.9/apache-maven-3.3.9-bin.zip
Maven sürümünü güncellemek veya değiştirmek için aşağıdakileri çağırın ( --non-recursiveçok modüllü projeler için unutmayın ):
./mvnw io.takari:maven:wrapper -Dmaven=3.3.9
veya yalnızca .mvn/wrapper/maven-wrapper.propertiesmanuel olarak değiştirin .
Maven kullanarak sıfırdan sarıcı oluşturmak için (zaten PATHçalışır durumda olması gerekir :
mvn io.takari:maven:wrapper -Dmaven=3.3.9
Maven Sarıcı Maven (veya hiç Maven'i yüklemek istemeyen kullanıcılar için) Belirli bir sürümü gerekir projeler için mükemmel bir seçimdir. Birçok sürümünü işletim sistemine yüklemek yerine, sadece projeye özgü sarmalayıcı komut dosyasını kullanabiliriz.
mvnw: tam yüklü bir Maven yerine kullanılan yürütülebilir bir Unix kabuk betiği
mvnw.cmd : Windows ortamı için
Kullanım Örnekleri
Sarıcı aşağıdakiler gibi farklı işletim sistemleriyle çalışmalıdır:
Bundan sonra, Unix sistemi için hedeflerimizi bu şekilde yürütebiliriz:
./mvnw clean install
Ve Batch için aşağıdaki komut:
./mvnw.cmd clean install
Sarıcı özelliklerinde belirtilen Maven'imiz yoksa $USER_HOME/.m2/wrapper/dists, sistem klasörüne indirilir ve yüklenir .
Maven Wrapper eklentisi
Maven Wrapper eklentisi , basit bir Spring Boot projesinde otomatik kurulum yapmak için.
İlk olarak, projenin ana klasörüne gitmeli ve şu komutu çalıştırmalıyız:
mvn -N io.takari:maven:wrapper
Maven sürümünü de belirleyebiliriz:
mvn -N io.takari:maven:wrapper -Dmaven=3.5.2
-N seçeneği –no-özyinelemeli anlamına gelir, böylece sarmalayıcı herhangi bir alt modülde değil, yalnızca geçerli dizinin ana projesine uygulanır.
Şimdiye kadar en iyi seçenek, bir oluşturucu aracı olarak bir maven kabı kullanmak olacaktır. Bunun mvn.shgibi bir komut dosyası yeterli olacaktır:
#!/bin/bash
docker run --rm -ti \
-v $(pwd):/opt/app \
-w /opt/app \
-e TERM=xterm \
-v $HOME/.m2:/root/.m2 \
maven mvn "$@"
mvnkullanabilsem de maven işlemi için komut kullanıyordum./mvnw.