SpringBoot增量打包方式

分离jar包
可以打一个全量的jar包,然后解压,在BOOT-INF文件中找到lib文件夹,拷贝出来。
分离

增量打包配置

		<resources>
            <resource>
                <directory>src/main/resources</directory>
                <includes>
                    <include>**/*.*</include>
                </includes>
                <excludes>
                    <exclude>application.properties</exclude>
                    <exclude>application.yml</exclude>
                </excludes>
            </resource>
        </resources>
		<plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <!-- 模块打包需要增加这个配置,带exec的为可执行jar,不带的为可引用jar-->
                    <classifier>exec</classifier>
                    <includeSystemScope>true</includeSystemScope>
                    <!-- 指定该jar包启动时的主类[建议] -->
                    <mainClass>com.rzkjsoft.yun.cas.WorkApplication</mainClass>
                    <!--必须为ZIP模式,不指定的话-Dloader.path不生效-->
                    <layout>ZIP</layout>
                   <!-- 打包的时候排除的jar包-->
                    <includes>
                        <include>
                            <groupId>non-exists</groupId>
                            <artifactId>non-exists</artifactId>
                        </include>
                    </includes>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>

打包得到一个带 exec 的jar文件,移至刚才拷贝出来的lib文件同目录。
我本地把配置文件也移出来了,创建个config文件夹。在 resource 中配置打包的时候排除。
截图
在此目录下启动 cmd 执行 java -Dloader.path=./lib -jar cas-server-1.1-exec.jar 即可。
如果用的是 powershell ,需要对参数加单引号。 java '-Dloader.path=./lib' -jar cas-server-1.1-exec.jar
成功

参考文档

0评论