“Mvn clean install” in “mvn install” den farkı nedir?


Yanıtlar:


214

cleanMaven'de kendi yapı yaşam döngüsü aşamasıdır (bir eylem veya görev olarak düşünülebilir). mvn clean installMaven'e cleanher modül için installfazı çalıştırmadan önce her modülde faz yapmasını söyler .

Bunun yaptığı, her modülü sıfırdan gerçekten derlediğinizden emin olarak, sahip olduğunuz derlenmiş dosyaları temizlemektir.


13
Her zaman temizlemenin aşamalarından biri olarak dahil olduğunu düşündüm ... bunu görene kadar
Junchen Liu

14
@shanyangqu Ne yazık ki hayır. cleanBir içindedir ayrı yaşam döngüsü , bu nedenle varsayılan olarak adlandırılan değil.
Mart'ta Powerlord

47

Maven, komut satırında (veya her ikisinde) hedefleri veya yaşam döngüsü aşamalarını belirtmenize olanak tanır.

cleanve installolan iki farklı ömrü aşamaları , içlerine farklı eklenti infaz bağlanmıştır (varsayılan başına veya iki senin pom.xml'Bu açıkça )

cleanFaz, kongre başına bir yapı tekrarlanabilir yapmak içindir, önceki kurar tarafından oluşturulan şey temizler yani. Çoğu durumda clean:clean, bağlı dizini ${project.build.directory}(genellikle "hedef" olarak adlandırılır) silen arayarak yapar.


6
"install" bir yaşam döngüsü değildir. Varsayılan yaşam döngüsünün bir aşamasıdır. "Temiz" yaşam döngüsü olmasına rağmen, AFAIK bu parametre "temiz" yaşam döngüsünün kendisini değil, "temiz" yaşam döngüsünde "temiz" aşamasını belirtir.
Puce

1
@Puce true, yaşam döngüsü değil, "Faz" demek istedim
Sean Patrick Floyd

38

Maven ile birden fazla hedef hedefi arayabilirsiniz . önce mvn clean installarar . Manuel olarak temizlemeniz gerekir, çünkü clean standart bir hedef hedef değildir ve her kurulumda otomatik olarak yürütülmez.cleaninstall

cleanhedef klasörü kaldırır - tüm sınıf dosyalarını, java dokümanlarını, kavanozları, raporları vb. siler. Eğer yapmazsanız clean, maven sadece "yapılması gerekeni yapar", karşılık gelen kaynak dosyaları değişmediğinde (kısaca) sınıfları derlemeyecektir.

biz diyoruz hedef karınca ve gol maven içinde


1
Bu bağlamda temiz ve kurulumun hedefler değil yaşam döngüsü aşamaları olduğunu düşünüyorum.
JL_SO


4

@Andreas_D için Ditto, ek olarak, temizlemeden projenizde Spring'i 1 sürümden diğerine güncelle derseniz, eserinizde her ikisiyle de kurtulacaksınız. Maven ile Flex geliştirme yaparken buna çok koştu.

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.