在开发项目时,为了开发、测试方便,系统会有多套配置文件,当项目打包的时候,即使测试环境在启动项目时指定配置文件,仍然可能会存在各种问题,因此最好的办法就是在打包项目时,将这些配置文件全部排除在外。

官方文档中给出了解决方法。

官方参考文档:https://maven.apache.org/plugins/maven-jar-plugin/examples/include-exclude.html.

<project>
  ...
  <build>
    <plugins>
      ...
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jar-plugin</artifactId>
        <version>3.2.0</version>
        <configuration>
          <includes>
            <include>**/service/*</include>
          </includes>
        </configuration>
      </plugin>
      ...
    </plugins>
  </build>
  ...
</project>

我是如何让解决的

项目结构:
在这里插入图片描述

排除maven打包配置文件的方法如下:在 pom.xml 文件中添加如下代码即可。

   <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <version>3.2.0</version>
                <configuration>
                    <excludes>
                        <exclude>bootstrap.yml</exclude>
                    </excludes>
                </configuration>
            </plugin>
        </plugins>
    </build>

maven 进行打包后,验证所生成 jar 包的结果:
在这里插入图片描述
在这里插入图片描述

我们启动时可以在 java -jar 命令中指定配置文件(配置文件放到 jar 包所在目录下)进行启动即可,当然还可以有其它方式指定启动时使用的配置文件。

java -jar boxx-0.0.1-SNAPSHOT.jar --Dspring.config.location=bootstrap.yml
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐