Можно ли использовать использованную версию maven для вставки в отфильтрованный файл ресурсов? - PullRequest
4 голосов
/ 07 октября 2009

Интересно, можно ли получить текущую используемую версию maven для фильтрации файла ресурсов.

У меня есть файл ресурсов, отфильтрованный по maven:

version=${project.version}
buildDate=${timestampFormatted}
buildBy=${user.name}
name=${project.artifactId}
buildVersion=${build.number}
osName=${os.name}
osArch=${os.arch}
osVersion=${os.version}
fileEncoding=${file.encoding}

и теперь я бы предпочел сохранить текущую версию maven.

Есть ли что-то вроде ${maven.version}?

Большое спасибо.

1 Ответ

5 голосов
/ 07 октября 2009

build-helper-maven-plugin может сделать это. Проверьте цель build-helper: maven-version , она устанавливает свойство, содержащее текущую версию maven (maven.version по умолчанию).

Например, следующий pom устанавливает свойство, а затем использует его для сохранения версии maven в манифесте jar проекта.

<project>
  ...
  <build>
    <plugins>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>build-helper-maven-plugin</artifactId>
        <version>1.3</version>
        <executions>
          <execution>
            <id>maven-version</id>
            <goals>
              <goal>maven-version</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jar-plugin</artifactId>
        <version>2.2</version>
        <configuration>
          <archive>
            <manifestEntries>
              <Maven-Version>${maven.version}</Maven-Version>
            </manifestEntries>
          </archive>
        </configuration>
      </plugin>
    </plugins>
  </build>
  ...
</project>
...