无法读取属性文件

时间:2016-07-12 10:01:59

标签: maven version-control pom.xml

3rdparty.property

xerces.version=1.0

我有这个属性文件,我想阅读它的内容,但我无法阅读。

<plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>properties-maven-plugin</artifactId>
        <executions>
          <execution>
            <phase>initialize</phase>
            <goals>
              <goal>read-project-properties</goal>
            </goals>
            <configuration>
              <files>
                <file>3rdparty.properties</file>
                <echo>foo is "${xerces.version}"</echo>
              </files>
            </configuration>
          </execution>
        </executions>
      </plugin>

日志文件显示它有错误。 错误是

The project com.CAPMOnline:IDLUtils:1608.0.11 (C:\srathaworkspace\IDLUtils\pom.xml) has 1 errors
[ERROR]     'dependencies.dependency.version' for com.3rdParty:xerces:jar must be a valid version but is '${xerces.version}'. @ com.CAPMOnline:IDLUtils:[unknown-version], C:\srathaworkspace\IDLUtils\pom.xml, line 22, column 13

1 个答案:

答案 0 :(得分:0)

文件的路径是否正确?尝试使用:

              <files>
                <file>${project.basedir}/3rdparty.properties</file>
              </files>

同时删除echo声明。

解析pom后立即解析依赖关系版本。它们不能由运行时由插件仅由已存在的属性加载的属性设置。在依赖版本解析后,所有生命周期阶段都会执行。正确的方法是将您的属性移动到父pom并从中继承。

请点击此处查看相关问题:Maven - Reading a property from an external properties file