从项目对象模型变量引用资源目录

时间:2012-02-09 18:26:47

标签: maven

如果我可以使用${project.build.sourceDirectory}来引用源目录,我可以用什么来引用“resources”目录?

看着超级pom,似乎${project.build.resources.resource.directory}会起作用,但事实并非如此。 。

3 个答案:

答案 0 :(得分:44)

${project.build.resources[0].directory}

maven reference @ Sonatype, chapter 'resource filtering'表示可以访问maven内部“Model.class”中的任何内容。引用:

  

有关Maven Model对象上可用属性的完整列表,请在此处查看maven-model项目的JavaDoc http://maven.apache.org/ref/3.0.4/maven-model/apidocs/index.html。加载此JavaDoc后,请查看模型类。从这个Model类JavaDoc,您应该能够导航到您想要引用的POM属性。

然后,maven help plugin有一个方便的help:evaluate目标,让您可以通过试验和错误来发现属性。

答案 1 :(得分:37)

来自here

  

目录:此元素的值定义了资源的找到位置。   构建的默认目录是${basedir}/src/main/resources

编辑:为清晰起见

答案 2 :(得分:0)

使用maven帮助插件扩展@chiebaud的答案,我认为今天的正确选择是

${project.resources[0].directory}

(无“ .build”部分)。