我目前正在处理一个现有的项目,该项目有一个pom.xml文件,其中包含以下内容:
<resources>
<resource>
<filtering>false</filtering>
<directory>src</directory>
<includes>
<include>**/*.properties</include>
</includes>
</resource>
</resources>
字符串
我在基本路径中有一个名为properties的目录,其中包含属性文件。我想在打包时复制所有属性文件包含在我的src目录中的properties/下(否则程序将由于缺少配置文件而崩溃)。
所以我的问题是:
我如何使用Maven包含不在src目录下的资源文件?
我试了一次,但似乎不起作用:
<resources>
<resource>
<filtering>false</filtering>
<directory>src</directory>
<includes>
<include>**/*.properties</include>
<include>../properties/**</include>
</includes>
</resource>
</resources>
型
谢谢你的帮助。
3条答案
按热度按时间l2osamch1#
如果你的文件结构是这样的:Standard Directory Layout
x1c 0d1x的数据
然后你就不必添加资源elemt了。Maven会默认将位于/src/main/resources文件夹中的所有文件和文件夹复制到你的build文件夹中,并将它们定位在编译后的类路径文件的根目录中。
例如,如果您有一个名为configuration.properties的文件位于
/src/main/resources/configuration.properties
中,那么在运行mvn clean compile
时,此文件将被复制到您的/target/classes/configuration.properties
中。因此,如果您删除了该部分,则文件将位于您想要的位置。字符串
hfyxw5xn2#
通过将项目从ant迁移到maven而不改变项目结构,在构建中设置您的sourceDirectory testSourceDirectory,并使用maven-resource-plugin,如下所示,在执行目标的哪个阶段要小心。
字符串
9lowa7mx3#
为了将所有内容从源复制到目的地,我使用了以下命令:
字符串