将文件读入Maven属性

时间:2012-02-17 20:52:01

标签: maven

是否可以读取文件并将整个内容存储到Maven属性中?

我正在尝试生成一些自定义JavaDoc,并且他们可以选择设置标头,但它必须是字符串,而不是文件名(出于某种原因)。我显然不想在我的pom.xml中放入一堆HTML,所以我需要一种方法来将我的header.html作为Maven属性阅读。

这可能吗?我无法找到标准方式,但看起来像Maven插件可能会这样做。

显然是Ant has what I want,但我更喜欢比Ant任务更重的东西。

1 个答案:

答案 0 :(得分:12)

请参阅有关SO的this问题。这是properties-maven-plugin

如果您不想使用 .properties 文件,我可以建议您使用Groovy插件和我编写的小脚本:

<plugin>
  <groupId>org.codehaus.gmaven</groupId>
  <artifactId>gmaven-plugin</artifactId>
  <version>1.4</version>
  <executions>
    <execution>
      <phase>generate-resources</phase>
      <goals>
        <goal>execute</goal>
      </goals>
      <configuration>
        <properties>
          <header_file>header.html</header_file>
        </properties>
        <source>
          def file = new File(project.properties.header_file)
          project.properties.header_content = file.getText()
        </source>
      </configuration>
    </execution>
  </executions>
</plugin>

执行此插件后,您应该能够引用包含${header_content}文件内容的header.html属性。