【问题标题】:Does adding a directory as a resource in Maven include all subdirectories?在 Maven 中添加目录作为资源是否包括所有子目录?
【发布时间】:2018-11-23 15:17:35
【问题描述】:

使用 Maven,当您将目录添加为资源时(在 POM 中 - 因此将其添加到项目类路径中),是否也会自动添加所有子目录?

例子:

    <resources>
        <resource>
            <directory>/project-directory/folder-in-project/resources/</directory>
        </resource>
    </resources>

如果目录 resources 中有一个名为 A.xml 的 XML 文件,一个文件夹(称为 moreResources),其中包含文件 B.xml 和 C.xml ,我的项目是否可以访问所有 XML 文件?

【问题讨论】:

  • 您的资源定义中不应该有绝对路径...只有相对路径...

标签: java xml maven


【解决方案1】:

是的,&lt;directory&gt;指定了一个根资源目录,所有子目录都包含在内。

【讨论】:

    【解决方案2】:

    使用

       <resources>
            <resource>
                <directory>${basedir}/src/main/resources/</directory>
                <includes>
                    <include>**/*.*</include>
                </includes>
            </resource>
        </resources>
    

    资源示例:

    src/main/resources/config/app.properties
    

    获取文件配置示例

    class App{
         //Content...
         InputStream appInput = App.class.getResourceAsStream("/config/app.properties")
    }
    

    【讨论】:

      猜你喜欢
      • 2018-02-18
      • 1970-01-01
      • 2010-11-19
      • 1970-01-01
      • 2012-04-24
      • 1970-01-01
      • 2011-11-06
      • 1970-01-01
      相关资源
      最近更新 更多