前言: 记得有人说过,Sb(ps:简称:SpringBoot)可以采用镜像分离进行部署打包,但是这种的话需要docker环境,由于Docker不会使用,还会在Centenos中出现各种错误,无法解决.个人菜
纯属个人意见,本次不会采用Docker 进而采用maven的插件进行打包.
1,在pom文件中加入配置以下:
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <configuration> <!--不打入jar包的文件类型或者路径--> <!-- <excludes> <exclude>*.properties</exclude> <exclude>*.yml</exclude> <exclude>*.yaml</exclude> </excludes>--> <archive> <manifest> <!-- 执行的主程序路径 --> <mainClass>com.xx.xx.xxApplication</mainClass> <!--是否要把第三方jar放到manifest的classpath中--> <addClasspath>true</addClasspath> <!--生成的manifest中classpath的前缀,因为要把第三方jar放到lib目录下,所以classpath的前缀是lib/--> <classpathPrefix>xx/lib/</classpathPrefix> <!-- 打包时 MANIFEST.MF 文件不记录的时间戳版本 --> <useUniqueVersions>false</useUniqueVersions> </manifest> <!--<manifestEntries> <!– 在 Class-Path 下添加配置文件的路径 –> <Class-Path>config/</Class-Path> </manifestEntries>--> </archive> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <executions> <execution> <id>copy</id> <phase>package</phase> <goals> <goal>copy-dependencies</goal> </goals> <configuration> <outputDirectory>${project.build.directory}/xx/lib/</outputDirectory> </configuration> </execution> </executions> </plugin> <!--<plugin> <artifactId>maven-resources-plugin</artifactId> <executions> <execution> <id>copy-resources</id> <phase>package</phase> <goals> <goal>copy-resources</goal> </goals> <configuration> <resources> <!–把配置文件打包到指定路径–> <resource> <directory>src/main/resources/</directory> <includes> <include>*.properties</include> <include>*.yml</include> <exclude>*.yaml</exclude> </includes> </resource> </resources> <outputDirectory>${project.build.directory}/config</outputDirectory> </configuration> </execution> </executions> </plugin>--> </plugins> </build>
重点说明:yml,properties,ymal可以参与复制到别的路径,个人感觉没必要 看实际需求参与复制 ,修改的时候直接修改就不用在打包了 方便简单
2,打包 跟传统打包方式一样 先clean 再package.
打包出来会在target目录出现以下样式 lib文件夹和jar文件
3,部署
将lib和jar上传到服务器 注意:lib和jar要在同一个目录下面 这样直接找到对应的文件.
4,后续
没有后续