Xml 使用位于项目根目录下的maven复制资源文件

Xml 使用位于项目根目录下的maven复制资源文件,xml,eclipse,maven,m2eclipse,Xml,Eclipse,Maven,M2eclipse,因此,我的pom.xml包含以下内容: <build> <resources> <resource> <directory>.</directory> <excludes> <exclude>.settings/</exclude>

因此,我的pom.xml包含以下内容:

    <build>
        <resources>
            <resource>
                <directory>.</directory>
                <excludes>
                    <exclude>.settings/</exclude>
                    <exclude>src/</exclude>
                    <exclude>target/</exclude>
                    <exclude>.classpath</exclude>
                    <exclude>.gitignore</exclude>
                    <exclude>.project</exclude>
                    <exclude>logging.log</exclude>
                    <exclude>mvn_cmd.bat</exclude>
                    <exclude>pom.xml</exclude>
                </excludes>
            </resource>
            <resource>
                <directory>src/main/resources</directory>
            </resource>
        </resources>
       ...

.
.设置/
src/
目标/
.classpath
.gitignore
项目
logging.log
mvn_cmd.bat
pom.xml
src/main/resources
...
我的目标是复制位于项目根目录下的单个文件(例如,
config.properties
),并在使用Eclipse执行
Maven>更新时将其复制到目标/类中。到目前为止,我发现解决此问题的唯一方法是手动从我的
${basedir}
目录中排除所有文件

我相信使用maven native命令可以很容易地直接完成这项工作,但我也需要使用m2eclipse来完成这项工作


我认为最好的方法是使用正则表达式来排除除我的
config.properties
之外的所有内容,但我不知道maven是否具有这种功能。

尝试使用includes而不是excludes,注意目录是项目的根目录,如下所示:

<resources>
    <resource>
        <directory>${project.basedir}</directory>
        <includes>
            <include>config.properties</include>
        </includes>
    </resource>
    <resource>
        <directory>src/main/resources</directory>
    </resource>
<resources>

${project.basedir}
config.properties
src/main/resources

尝试使用include而不是excludes,注意目录是项目的根目录,如下所示:

<resources>
    <resource>
        <directory>${project.basedir}</directory>
        <includes>
            <include>config.properties</include>
        </includes>
    </resource>
    <resource>
        <directory>src/main/resources</directory>
    </resource>
<resources>

${project.basedir}
config.properties
src/main/resources

如果我在命令行上执行
mvn resources:resources
,include可以正常工作,但在项目上执行
maven>更新时,它不包括m2e插件的config.properties。也许这是eclipse插件的一个bug?可能是的,我肯定看到eclipse和Maven有时不能很好地配合。我通常确保Maven在命令行上工作,因为这样Jenkins/您的CI系统通常也会工作。你可以确保你有一个更新版本的m2e。这个和@antogerva answer将资源从根目录复制到classes文件夹中,但是如何让maven将它们复制到目标的根目录中?如果我在命令行上执行
mvn resources:resources
,include可以正常工作,但是,当我对项目执行
maven>更新时,它没有将config.properties与m2e插件一起包含。也许这是eclipse插件的一个bug?可能是的,我肯定看到eclipse和Maven有时不能很好地配合。我通常确保Maven在命令行上工作,因为这样Jenkins/您的CI系统通常也会工作。您可以确保您拥有m2e的更新版本。this和@antogerva answer将资源从根目录复制到classes文件夹中,但是如何让maven将它们复制到目标的根目录中呢?