首页 > 其他分享 >maven资源文件打包过程

maven资源文件打包过程

时间:2023-02-02 15:13:39浏览次数:45  
标签:文件 jdbc src 资源 maven 打包 resources

一般地,我们的src/main/resources目录下有很多配置文件,比如jdbc.properties配置文件;

当编译或打包的时候,会使用插件maven-resources-plugin的resources目标,将src/main/resouces目录中的资源文件复制到了target/classess目录下;

在配置文件被复制的过程中,我们可以干预配置文件的信息,比如:

(1)复制过程中对资源文件设置字符编码;

(2)复制过程中对资源文件进行替换;

maven-resources-plugin这个插件就提供了这样的功能;

设置字符编码:

<properties>

    <encoding>UTF-8</encoding>

</properties>

设置资源文件内容动态替换

资源文件中可以通过 ${maven属性} 来引用maven属性中的值,打包的过程中这些会被替换掉,替换的过程默认是不开启的,需要手动开启配置

修改src/main/resource/jdbc.properties内容如下:

jdbc.url=${jdbc.url}

jdbc.username=${jdbc.username}

jdbc.password=${jdbc.password}

修改src/test/resource/jdbc.properties内容如下:

jdbc.url=${jdbc.url}

jdbc.username=${jdbc.username}

jdbc.password=${jdbc.password}

 

在pom.xml的resources中开启资源替换:

<build>

    <resources>

        <resource>

            <!-- 指定资源文件的目录 -->

            <directory>${project.basedir}/src/main/resources</directory>

            <!-- 是否开启过滤替换配置,默认是不开启的 -->

            <filtering>true</filtering>

        </resource>

    </resources>

    <testResources>

        <testResource>

              <!-- 指定资源文件的目录 -->

            <directory>${project.basedir}/src/test/resources</directory>

              <!-- 是否开启过滤替换配置,默认是不开启的 -->

            <filtering>true</filtering>

        </testResource>

    </testResources>

</build>

 

注意上面开启动态替换的元素是filtering;

上面build元素中的resources和testResources是用来控制构建过程中资源文件配置信息的,比资源文件位于哪个目录,需要复制到那个目录,是否开启动态过滤等信息;

resources元素中可以包含多个resource,每个resource表示一个资源的配置信息,一般使用来控制资源的复制的;

testResources元素和testResources类似,用来控制测试资源的复制;

标签:文件,jdbc,src,资源,maven,打包,resources
From: https://www.cnblogs.com/healthinfo/p/17086065.html

相关文章

  • maven自定义替换的分隔符
    自定义分隔符,需要我们配置maven-resources-plugin插件的参数,如下<plugins>    <plugin>        <groupId>org.apache.maven.plugins</groupId>     ......
  • maven资源文件排除某些资源的配置
    <resource>    <!--指定资源文件的目录-->    <directory>${project.basedir}/src/main/resources</directory>    <!--是否开启过滤替换配置,默认是不开启......
  • maven插件配置
     自定义绑定除了默认绑定的一些操作,我们也可以将一些阶段绑定到指定的插件目标上来完成一些操作,这种自定义绑定让maven项目在构件的过程中可以执行更多更丰富的操作;mvn......
  • maven settings.xml 配置 镜像仓库
    <?xmlversion="1.0"encoding="UTF-8"?><settingsxmlns="http://maven.apache.org/SETTINGS/1.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:sch......
  • 前端文件下载以及重命名的优化
    关于文件下载:1.贴一下现在项目现有写法:2.改进后写法(推荐使用):import{saveAs}from'file-saver';saveAs(url,fileName)3.其他(1)同域<adownload=”xxx.x......
  • 微星MSI GS65 9SE 电脑 Hackintosh 黑苹果efi引导文件
    硬件型号驱动情况主板处理器i79750h已驱动内存Micron 8ATF1G64HZ-3G2J116GB已驱动硬盘三星pm981(已更换sm961,并添加一块东芝512ssd用于安装win10)已驱动显卡Intel UHD......
  • elasticsearch-8.6.0 配置文件
    #========================ElasticsearchConfiguration=========================##NOTE:Elasticsearchcomeswithreasonabledefaultsformostsettings.#......
  • Python代码打包成可执行文件的常用方法!
    大家都知道,平时我们写的Python程序,其运行主要依赖于Python环境。当我们想要提供给别人使用或者更换电脑时,就需要重新安装Python环境,十分麻烦,因此我们想要将它传给任何人......
  • python读文件
    第一种方法#encoding=utf-8file=open("./man_data.txt","r")try:printfile.read()finally:file.close()第二种方法#encoding=utf-8try:withopen('./man_dat......
  • kali2020(Debian)虚拟机能上网但是,无法ping通内网(你电脑上的其他虚拟机和物理机IP地址),但
    转载自:https://blog.csdn.net/qq_59318082/article/details/121519841首先,你要判断你所要ping的虚拟机是否处于跟你kali相同的网段,Linux的ip查看命令ifconfig Wind......