从另一个maven项目中复制include资源

问题描述 投票:0回答:1

让我来解释一下我在寻找什么。

有一个项目,它的POM.xml在路径为

project/ui/application/pom.xml. 

我一般使用uiapplicatio.pom.xml建立我的WAR文件。

在UI的POM中,我包含了一些模块,比如 "applicationDTO",其POM的路径是

project/common/applicationDTO/pom.xml.

现在在applicationDTO项目中,有这样一个文件 "ABC.properties" 我想把它包含在我用UI项目创建的WAR文件中。

简而言之,我想把ABC.properties文件包含在UI的项目中。

下面是我试过的方法,但是我得到的错误信息是这样的

skip non existing resourceDirectory C:\Users\Desktop\project\ui\application\common\applicationDTO\QA

注:项目是指源文件夹,其中有UI和applicationDTO项目,我想通过POM把applicationDTO文件夹的文件复制到UI文件夹。我想通过POM将applicationDTO文件夹中的文件复制到UI文件夹中。

如果我无法解释我的问题,请原谅我。

maven-3 pom.xml maven-resources-plugin
1个回答
1
投票

你可以使用maven资源插件

https:/maven.apache.orgpluginsmavenresources-pluginexamplesinclud-exclude.html。

你可能需要调整路径来使其工作。

更新。

考虑到您的文件夹结构是

ABC 
-ui
  - application (build here)
    - pom.xml
    - classes
-common
  - ABC.properties

现在,当你从应用程序文件夹中运行你的maven构建时,下面可以是以下部分

    <plugin>
    <artifactId>maven-resources-plugin</artifactId>
    <version>2.7</version>
    <executions>
        <execution>
            <id>copy-resources</id>
            <phase>validate</phase>
            <goals>
                <goal>copy-resources</goal>
            </goals>
            <configuration>
                <outputDirectory>./classes</outputDirectory>
                <resources>
                    <resource>
                        <includes>
                            <include>ABC.properties</include>
                        </includes>
                        <directory>../../common</directory>
                        <filtering>true</filtering>
                    </resource>
                </resources>
                <delimiters>
                    <delimiter>@{*}</delimiter>
                </delimiters>
                <useDefaultDelimiters>false</useDefaultDelimiters>
            </configuration>
        </execution>
    </executions>
</plugin>
© www.soinside.com 2019 - 2024. All rights reserved.