java中的Maven專案的打包成jar或者war
阿新 • • 發佈:2018-12-25
將maven專案打包。pom.xml中如果沒有指定打包型別,預設打包型別為:jar。我們可以簡單地執行命令打包: mvn clean pachage。
類似地,maven會在打包之前執行編譯,測試等操作。如以打jar包為例,jar:jar任務負責打包,實際上就是jar外掛的jar目標將專案主程式碼打包成一個名為xxxxxx-1.0-SNAPSHOT.jar的檔案。該檔案也位於target/輸出目錄中,它是根據artifact-version.jar的規則進行命名的,如有需要,還可以使用finalName來自定義該檔案的名稱,這裡暫且不展開,後面會詳細解釋。
在打包之後,又執行了安裝任務install:install。從輸出可以看到任務將專案輸出的jar安裝到了maven本地倉庫中,可以開啟相應的資料夾看到專案的pom和jar。之前我們說只有構件被下載到本地倉庫後,才能由所有Maven專案使用,這裡同樣的道理,只有將自己編寫的專案安裝到本地倉庫之後,其他maven專案才能使用它。
我們已經體驗了maven最主要的命令:mvn clean compile,mvn clean test,mvn clean package,mvn clean install。執行test之前是會先執行compile的,執行package之前是會先執行test的,而類似地,install之前會執行package。可以在任何一個maven專案中執行這些命令。
1、打包成jar包,在pox.xml中配置下面程式碼
這樣執行package命令就可以打包成jar包了(小白不會使用命令列,直接視覺化操作,IDE是intellij)<plugin> <artifactId>maven-assembly-plugin</artifactId> <configuration> <appendAssemblyId>false</appendAssemblyId> <descriptorRefs> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> <archive> <manifest> <mainClass>com.ebay.montage.eventprocessor.collector.CodeRollOutEventDataCollector</mainClass> </manifest> </archive> </configuration> <executions> <execution> <id>make-assembly</id> <phase>package</phase> <goals> <goal>assembly</goal> </goals> </execution> </executions> </plugin>