如何使原型生成一个名为artifactId的文件

时间:2014-09-25 13:03:22

标签: java maven properties maven-archetype

我有一个小ConfigurationSingleton类,它从目前名为configuration_singleton.xml的配置文件中加载一些属性:

private ConfigurationSingleton() throws IOException {
  ...
  configurationIS = ConfigurationSingleton.class.
      getResourceAsStream("/configuration_singleton.xml");
  ...

该文件位于以下目录中:

/
++- src
    +-- test
        +-- resources
            +-- configuration_singleton.xml

现在我想使用原型来生成由my-project-1.0.0.jar文件配置的my-project-1.0.0.xml工件。像往常一样,我在这里使用了Maven属性${artifactId}${version}

private ConfigurationSingleton() throws IOException {
  ...
  configurationIS = ConfigurationSingleton.class.
      getResourceAsStream("/${artifactId}-${version}.xml");
  ...

但是如何使原型生成一个名为${artifactId}-${version}.xml的配置文件?

1 个答案:

答案 0 :(得分:0)

正如archetype descriptor fileset中所述:

  

如果文件或目录名称包含__property__模式,则将其替换为相应的属性值。

因此,您可以在原型项目的文件系统中使用__artifactId____version__属性,如:

/
+-- src
    +-- test
        +-- resources
            +-- __artifactId__-__version__.xml

<强>综述

  • 在文件
  • 中使用${property}
  • 在文件系统中使用__property__