如何使用 Maven 不同环境使用不同资源文件 提升项目安全性

需求:

之前的文章介绍过,不同环境,配置文件可以灵活构建,参考Maven 不同环境灵活构建

进一步的,打包时时可以进一步优化,即开发环境,构建时只将测试资源文件打包到应用中,进一步提升项目的安全性。

1. 使用插件

pom.xml

xml 复制代码
 <!--    打包时将 将不同环境的配置文件复制到jar包中        -->
 <plugin>
     <groupId>org.apache.maven.plugins</groupId>
     <artifactId>maven-resources-plugin</artifactId>
     <version>3.2.0</version>
     <executions>
         <execution>
             <id>copy-resources</id>
             <phase>process-resources</phase>
             <goals>
                 <goal>copy-resources</goal>
             </goals>
             <configuration>
                 <outputDirectory>${project.build.outputDirectory}</outputDirectory>
                 <resources>
                     <resource>
                         <directory>src/main/resources/resources-env/${env}</directory>
                         <filtering>false</filtering>
                     </resource>
                 </resources>
             </configuration>
         </execution>
     </executions>
 </plugin>

<plugin>
   <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    <version>3.2.0</version>
    <configuration>
       	<!-- 环境隔离 排除不需要的文件-->
        <excludes>
            <exclude>resources-env/**</exclude>
        </excludes>
    </configuration>
</plugin>
相关推荐
咖啡教室3 小时前
java日常开发笔记和开发问题记录
java
咖啡教室3 小时前
java练习项目记录笔记
java
鱼樱前端3 小时前
maven的基础安装和使用--mac/window版本
java·后端
RainbowSea4 小时前
6. RabbitMQ 死信队列的详细操作编写
java·消息队列·rabbitmq
RainbowSea4 小时前
5. RabbitMQ 消息队列中 Exchanges(交换机) 的详细说明
java·消息队列·rabbitmq
李少兄6 小时前
Unirest:优雅的Java HTTP客户端库
java·开发语言·http
此木|西贝6 小时前
【设计模式】原型模式
java·设计模式·原型模式
可乐加.糖6 小时前
一篇关于Netty相关的梳理总结
java·后端·网络协议·netty·信息与通信
s9123601016 小时前
rust 同时处理多个异步任务
java·数据库·rust
9号达人6 小时前
java9新特性详解与实践
java·后端·面试