2016-04-22 23 views
-1

当我构建一个子项目时,我试图引用父项目中的属性文件。父项目中的属性文件

从子项目

... 
<parent> 
    <groupId>com</groupId> 
    <artifactId>parent</artifactId> 
    <version>${parent.version}</version> 
</parent> 
... 

该文件位于/父母/ testproperties的/ dev POM。从父项目

POM

... 
<properties> 
    <test.properties>${project.build.directory}/../../testproperties/dev/test.properties</test.properties> 
    <maven-antrun-plugin-phase>none</maven-antrun-plugin-phase> 
</properties> 
... 

的Maven无法找到该文件。

+0

我完全不理解你的问题。哪里不对?什么没有找到? '$ {project.build.directory} /../../ testproperties/dev /'是否存在? – Tunaki

+0

是的,$ {project.build.directory} /../../ testproperties/dev/exists。它被解释为C:/code/PropertiesFiltering/testproperties/dev/test.properties test.properties文件存在于该位置。从子模块构建时,Maven不会识别该文件在那里。 – Jim

回答

0

这个不起作用的原因是所需文件不在子模块的类路径中。子模块不会继承父模块类路径。通过让父模块将需要的文件复制到子模块的类路径中来实现它。