我是 Maven 新手,遇到了资源部分。maven 项目描述符(4.0 版)的参考说明“此元素描述了与项目或单元测试关联的所有类路径资源”(链接)。然而,这个描述我不理解/似乎对我来说是抽象的。为什么我要描述类路径资源?它如何影响项目的生命周期?
马蒂亚斯
通常你有 src/main/resources 文件夹,其中包含将被打包到 jar 中的资源。上述文件夹中的所有内容都将自动打包到一个 jar 中,并可通过 getResource 访问...通过 pom 中的资源区域,您可以将文件从 src/main/resources 过滤到 target/classes 文件夹。
<project>
...
<name>My Resources Plugin Practice Project</name>
...
<build>
...
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
...
</resources>
...
</build>
...
</project>
Maven 的生命周期不受此影响。
例如,此功能允许您在 .properties 文件中使用 Maven 变量。只需在部分中声明 .properties 所在的目录,您<resources>
就可以使用 ${project.name} 或其他任何内容。
pom.xml:
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
版本属性:
version=${pom.version}
timestamp=${timestamp}
(${timestamp} 是使用 Maven Build Number 插件创建的)。