2 回答

TA貢獻(xiàn)1943條經(jīng)驗(yàn) 獲得超7個(gè)贊
Maven build 等同于Maven命令;
mvnpackage表示對(duì)Maven工程進(jìn)行打包。
Maven Clean等同于Maven命令;
mvnclean表示刪除maven工程的target目錄下的內(nèi)容。
Maven Install等同于命令;
mvninstall表示將jar包發(fā)布到本地maven倉(cāng)庫(kù)。
首先需要理解maven的生命周期與插件目標(biāo)這兩個(gè)概念:
拿Maven clean來說吧。生命周期為clean,插件目標(biāo)為maven-clean-plugin:clean。
Maven build是這個(gè)插件讓你自己去配置執(zhí)行目標(biāo)的。
Maven clean 清除上一次Maven執(zhí)行的結(jié)果,
Maven generate-sources會(huì)根據(jù)pom配置去生成源代碼格式的包,
Maven install將項(xiàng)目輸出構(gòu)件部署到本地倉(cāng)庫(kù)。
不必太過于關(guān)注build工作的實(shí)現(xiàn)細(xì)節(jié)。我們只需要使用一些build生命周期短語(yǔ)就可以達(dá)到我們的目標(biāo),而不必管Maven是如何做到這些的。如:只需要告訴Maven要安裝(install),那么它自然就會(huì)驗(yàn)證,編譯,打包,及安裝。
Dependency:為了能夠build或運(yùn)行,一個(gè)典型的Java工程會(huì)依賴其它的包。在Maven中,這些被依賴的包就被稱為dependency。dependency一般是其它工程的artifact。
Plug-in:Maven是由插件組織的,它的每一個(gè)功能都是由插件提供的。插件提供goal(類似于Ant中的target),并根據(jù)在POM中找到的元數(shù)據(jù)去完成工作。主要的Maven插件要是由Java寫成的,但它也支持用Beanshell或Ant腳本寫成的插件。
Repository:倉(cāng)庫(kù)用于存放artifact,它可以是本地倉(cāng)庫(kù),也可以是遠(yuǎn)程倉(cāng)庫(kù)。
添加回答
舉報(bào)