Jaka jest różnica między mvn clean install
i mvn install
?
208
clean
jest własną fazą cyklu życia kompilacji (którą można traktować jako akcję lub zadanie) w Maven. mvn clean install
mówi Maven, aby wykonał clean
fazę w każdym module przed uruchomieniem install
fazy dla każdego modułu.
Pozwala to wyczyścić wszystkie skompilowane pliki, które masz, upewniając się, że naprawdę kompilujesz każdy moduł od zera.
clean
jest w osobnym cyklu życia , więc nie jest wywoływany domyślnie.Maven pozwala określić cele lub fazy cyklu życia w wierszu poleceń (lub w obu).
clean
iinstall
są to dwie różne fazy cyklu życia , z którymi powiązane są różne wykonania wtyczek (domyślnie lub jawnie w pliku pom.xml )clean
Faza, na konwencji, ma dokonać kompilacji powtarzalne, czyli czyści wszystko, co zostało stworzone przez poprzednie buduje. W większości przypadków robi to poprzez wywołanieclean:clean
, które usuwa katalog związany z${project.build.directory}
(zwykle nazywany „docelowym”)źródło
Możesz zadzwonić do więcej niż jednego
celu docelowego zapomocą maven. najpierwmvn clean install
dzwoni . Musisz wyczyścić ręcznie, ponieważ czyszczenie nie jest standardowymcelem docelowymi nie jest wykonywane automatycznie przy każdej instalacji.clean
install
clean
usuwa folder docelowy - usuwa wszystkie pliki klas, dokumenty Java, słoiki, raporty i tak dalej. Jeśli tego nie zrobiszclean
, maven „zrobi tylko to, co trzeba”, tak jak nie skompiluje klas, gdy odpowiednie pliki źródłowe nie ulegną zmianie (w skrócie).nazywamy to celem w mrówce i celem w maven
źródło
Aby trzymać się warunków Maven:
http://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html#Lifecycle_Reference
źródło
To samo dotyczy @Andreas_D, dodatkowo, jeśli powiesz, że zaktualizuj Spring z 1 wersji do innej w swoim projekcie bez robienia porządków, skończysz z obydwoma w swoim artefakcie. Wpadłem na to dużo podczas tworzenia Flex z Maven.
źródło