Maven入門(二)專案的打包和執行
阿新 • • 發佈:2019-01-05
在上一篇(建立第一個Maven專案)介紹了Maven的編譯和測試,
編譯和測試通過後就是打包和運行了。
一、打包
命令:mvn clean package
執行命令後輸出資訊如下:
打包後在target/目錄中會生成helloworld-1.0-SNAPSHOT.jar檔案。
二、安裝執行
命令:mvn clean install
執行命令後輸出資訊如下:
從輸出資訊可以看出,jar被安裝到了Maven本地倉庫中。
到目前為止,從編譯到安裝都已經執行完了,但是還沒有真正執行,因為我們的專案主檔案中是有Main方法的。
為了讓其能夠執行,我們需要讓Maven生成可執行的jar檔案,這就需要在pom.xml中配置一下maven-shade-plugin外掛。
配置外掛如下:
在pom.xml的project元素中新增。<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>1.4</version> <executions> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> <configuration> <transformers> <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> <mainClass>com.kafei.mvnproject.helloworld.HelloWorld</mainClass> </transformer> </transformers> </configuration> </execution> </executions> </plugin> </plugins> </build>
配置的mainClass為com.kafei.mvnproject.helloworld.HelloWorld,專案在打包時會將該資訊放到MANIFEST中。現在執行mvn clean install,待構建完之後開啟
target/目錄,就可以看到helloworld-1.0-SNAPSHOT.jar和original-helloworld-1.0-SNAPSHOT.jar,前者是可執行的jar,後者是原始的jar。
用記事本開啟helloworld-1.0-SNAPSHOT.jar的META-INF/MANIFEST.MF檔案,可以看到如下資訊:
com.kafei.mvnproject.helloworld.HelloWorld
現在在專案根目錄執行該jar檔案輸出如下:
至此Maven專案的打包、測試已經完成。