springboot打包去除资源文件及启动时指定配置文件位置

Posted 大坑水滴

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springboot打包去除资源文件及启动时指定配置文件位置相关的知识,希望对你有一定的参考价值。

springboot打包时,去掉资源文件,可按照如下配置

<build>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <excludes>
                    <exclude>*.properties</exclude>
                    <exclude>*.log4j2.xml</exclude>
                </excludes>
            </resource>
        </resources>
        <plugins>
            <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>  
                  <skipTests>true</skipTests>  
                </configuration>
            </plugin>
        </plugins>
    </build>

但这样配置后,在eclipse中启动springboot项目,则会出现读取不到配置资源的情况,所以在eclipse启动项目时,需要注释掉如下配置

<resources>
        <resource>
            <directory>src/main/resources</directory>
                <excludes>
                    <exclude>*.properties</exclude>
                    <exclude>*.log4j2.xml</exclude>
                </excludes>
        </resource>
</resources> 

 

项目打成jar包后,运行时,可将配置文件放入jar包同级目录下或者在同级的config目录下(放入classpath下或者classpath下config目录下也可以,但是打成jar包,就需要一起打包出来)

配置文件加载顺序为:

jar包同级目录下的config文件夹下配置

jar包同级目录下配置

classpath下config目录下配置

classpath下配置

java -Xms100m -Xmx100m -jar myboot001-0.0.1-SNAPSHOT.jar &

也可指定加载配置文件的地址

java -Xms100m -Xmx100m -jar myboot001-0.0.1-SNAPSHOT.jar --spring.config.location=configs/application.properties

以DEBUG方式启动

java -Xms100m -Xmx100m -jar myboot001-0.0.1-SNAPSHOT.jar --spring.config.location=configs/application.properties --debug

 

以上是关于springboot打包去除资源文件及启动时指定配置文件位置的主要内容,如果未能解决你的问题,请参考以下文章

SpringBoot - resource资源文件的打包配置详解(指定资源文件位置)

SpringBoot 打包静态资源和 jar包分离怎么配置?

SpringBoot 打包静态资源和 jar包分离怎么配置?

SpringBoot 打包静态资源和 jar包分离怎么配置?

springboot运行和打包端口不一致

springboot去除内嵌tomcat和打包在tomcat中运行需要做的步骤