1. 打包前確認項目能夠正常運行,打開Project Structure 快捷鍵 Ctrl+Shift+Alt+S,或者點擊下圖圖標java
2. 將代碼打包,操做以下圖所示:spring
3.以下圖,module選擇須要打包的項目名;Main Class 選擇項目的主程序類;輸出目錄確保是空的,若是裏面有一個MANIFEST.MF文件,要先刪除掉apache
若是存在就刪除,不存在就沒必要理會tomcat
4. 如今將設置都搞定好後,就開始打包,若是初次打包按照如下流程maven
點擊Build Artifacts後會出現下圖的彈窗spring-boot
若是是初次打包點擊build,若是不是請點擊Rebuild測試
5. 最後找到輸出目錄便可ui
全部的輸出文件都在out目錄下,運行 java -jar xxxx.jar便可運行項目spa
利用 maven 使用 項目代碼,與依賴分開。這裏沒有使用 【spring-boot-maven-plugin】 而是使用了 【maven-jar-plugin】code
<build> <!--打成 jar 包後的名稱--> <finalName>xy-tasty-mgr</finalName> <plugins> <!--使用 spring-boot plugin 打包 --> <!--<plugin>--> <!--<groupId>org.springframework.boot</groupId>--> <!--<artifactId>spring-boot-maven-plugin</artifactId>--> <!--</plugin>--> <!--跳過測試--> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <skip>true</skip> </configuration> </plugin> <!--打jar 包--> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <configuration> <archive> <manifest> <!--添加依賴包--> <addClasspath>true</addClasspath> <!-- MANIFEST.MF 中 Class-Path 加入前綴 --> <classpathPrefix>lib/</classpathPrefix> <!--指定入口類 --> <mainClass>com.xy.tasty.mgr.TastyMgrApplication</mainClass> </manifest> </archive> </configuration> </plugin> <!--依賴包複製--> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <executions> <execution> <id>copy-lib</id> <phase>prepare-package</phase> <goals> <goal>copy-dependencies</goal> </goals> <configuration> <outputDirectory>${project.build.directory}/lib</outputDirectory> <overWriteReleases>false</overWriteReleases> <overWriteSnapshots>false</overWriteSnapshots> <overWriteIfNewer>true</overWriteIfNewer> <includeScope>compile</includeScope> </configuration> </execution> </executions> </plugin> </plugins> </build>
若是不是 spring-boot 模塊,但繼承了【spring-boot-starter-parent】 打包:
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <configuration> <archive> <manifest> <!-- 是否添加依賴的jar路徑配置 --> <addClasspath>false</addClasspath> <!-- MANIFEST.MF 中 Class-Path 加入前綴 --> <!--<classpathPrefix>lib/</classpathPrefix>--> <!--指定入口類 --> <!--<mainClass>com.example.demo.DemoApplication</mainClass>--> </manifest> </archive> </configuration> </plugin> </plugins> </build>