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>