加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 在maven-war-plugin中过滤不排除目录

发布时间:2020-12-15 04:19:30 所属栏目:Java 来源:网络整理
导读:这是我昨天的问题 Conditionally exclude some resources in maven from war的后续内容.我能够重新安排开发和生产战争,但是过滤将目录属性复制到战争中,尽管根据 documentation将其排除.我可以使用packagingExcludes选项,但我想知道为什么排除不行.谢谢你的
这是我昨天的问题 Conditionally exclude some resources in maven from war的后续内容.我能够重新安排开发和生产战争,但是过滤将目录属性复制到战争中,尽管根据 documentation将其排除.我可以使用packagingExcludes选项,但我想知道为什么排除不行.谢谢你的解释.

<plugin>
    <artifactId>maven-war-plugin</artifactId>
    <configuration>
        <classifier>dev</classifier>
        <webappDirectory>${project.build.directory}/${project.build.finalName}-dev</webappDirectory>
        <filters>
            <filter>${project.basedir}/configurations/properties/config_dev.prop</filter>
        </filters>
        <webResources>
            <resource>
                <directory>configurations</directory>
                <filtering>true</filtering>
                <targetPath>WEB-INF/classes</targetPath>
                <excludes>
                    <exclude>**/properties</exclude>
                </excludes>
            </resource>
        </webResources>
    </configuration>
    <executions>
        <execution>
            <id>package-prod</id>
            <phase>package</phase>
            <configuration>
                <classifier>prod</classifier>
                <webappDirectory>${project.build.directory}/${project.build.finalName}-prod</webappDirectory>
                <packagingExcludes>WEB-INF/classes/*.jks,WEB-INF/classes/acquirer.properties</packagingExcludes>
                <filters>
                    <filter>${project.basedir}/configurations/properties/config_prod.prop</filter>
                </filters>
                <webResources>
                    <resource>
                        <directory>configurations</directory>
                        <filtering>true</filtering>
                        <targetPath>WEB-INF/classes</targetPath>
                        <excludes>
                            <exclude>**/properties</exclude>
                        </excludes>
                    </resource>
                </webResources>
            </configuration>
            <goals>
                <goal>war</goal>
            </goals>
        </execution>
    </executions>
</plugin>

解决方法

资源的排除是基于文件的,即它们忽略文件夹.这是因为对webResources进行了潜在的过滤.

因此,排除中的globs应用于目录中的所有文件,排除与排除glob匹配的任何文件.

但是,您只排除了一个目录.

更改为** / properties / *或** / properties / **,它将起作用.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读