You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Maven配置:修改/src/main/resources文件的部署目录

解决Maven War项目资源文件部署路径问题

你之前调整Eclipse的Java Build Path和Deploy Assembly没起作用,核心原因是Maven构建过程会完全接管war包的结构生成,Eclipse的本地配置会被Maven的pom.xml覆盖。要把/src/main/resources下的文件部署到WEB-INF/cfg,必须修改maven-war-plugin的配置:

修改pom.xml里的maven-war-plugin节点,添加webResources配置,明确指定资源的源路径和目标部署路径:

<plugin>
    <artifactId>maven-war-plugin</artifactId>
    <version>3.2.3</version>
    <configuration>
        <packagingExcludes></packagingExcludes>
        <!-- 新增资源路径映射配置 -->
        <webResources>
            <!-- 将src/main/resources下的所有文件部署到WEB-INF/cfg -->
            <resource>
                <directory>src/main/resources</directory>
                <targetPath>WEB-INF/cfg</targetPath>
                <!-- 如需排除特定文件,可添加过滤规则,示例:<exclude>**/*.xml</exclude> -->
            </resource>
            <!-- 保留编译后的class文件到WEB-INF/classes(不需要可删除此节点) -->
            <resource>
                <directory>target/classes</directory>
                <targetPath>WEB-INF/classes</targetPath>
            </resource>
        </webResources>
    </configuration>
</plugin>

关键配置说明:

  • <directory>:设置要打包的资源源目录,这里指向你的src/main/resources
  • <targetPath>:设置资源在最终war包中的目标路径,这里指定为WEB-INF/cfg
  • 如果只需要把部分资源移到WEB-INF/cfg,可以在第一个resource节点里添加<excludes>或<includes>规则,精准控制哪些文件走自定义路径。

修改完成后,执行mvn clean install,生成的war包里,src/main/resources的文件就会出现在WEB-INF/cfg目录下,而不是默认的WEB-INF/classes。

内容的提问来源于stack exchange,提问作者Charles

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 08:57:19