Я можу підтвердити, що Maven 3.x {maven.build.timestamp}
зараз "працює". Вони , мабуть, обійшли проблему. Ніяких додаткових properties
рішень більше не потрібно.
Однак будьте уважні, що ваш «фільтруючий» плагін (maven-ресурси-плагін) оновлений. Він повинен бути відносно новим, тому, якщо mvn help:effective-pom
відображається стара версія (напр .: 2.6), підключіть її до чогось нового, виправте її для мене, 3.x ex:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>3.1.0</version>
</plugin>
<properties><timestamp>...
вирішення більше не потрібно ...
Це також з'ясувало, начебто, чому він працює в IntelliJ, але не в командному рядку. IntelliJ, ймовірно, використовує власні "модифіковані / внутрішні" Maven константи, тому він працював там, але не з командного рядка Maven.
Також зверніть увагу, якщо ви додасте до себе каталог ресурсів фільтрації, вам може знадобитися також "повторно додати" каталог за замовчуванням, він втрачається, наприклад:
<resource>
<directory>src/main/resources-filtered</directory> <!-- to get "maven.build.timestamp" into resource properties file -->
<filtering>true</filtering>
</resource>
<resource>
<directory>src/main/resources</directory> <!-- apparently have to add this is you have the other... -->
</resource>
NB , якщо ви використовуєте багажник пружини в якості батька, ви повинні використовувати @ maven.build.timestamp @ замість . Також зверніть увагу, якщо ви використовуєте весняний завантажувач, є файл, META-INF/build-info.properties
який необов'язково створюється тим, spring-boot-maven-plugin
що ви можете прочитати (весна забезпечує BuildProperties
боб для зручності його читання).
target/${project}
папці нормальна , але в моїй конфігурації actuall Tomcat не використовує цю папку ...