Repository navigation
Properties Maven Plugin 1.4.0 adds an encoding setting and key filtering for property files, can write the command-line properties, fixes nested placeholder defaults, and requires Maven 3.9.0 or later. This release is tagged 1.4.0; earlier releases used the properties-maven-plugin-x.y.z tag form.
✨ Highlights
encodingsets the character set for reading and writing property files and URLs, for exampleUTF-8. Without it,.propertiesfiles are still read as ISO-8859-1, as the JDK does (#186, #92 by @pbarnes-tibco).includedPropertyKeysandexcludedPropertyKeysonread-project-propertieschoose which keys are imported, matched beforekeyPrefixis applied (#187, #136 by @cowwoc).includeUserPropertiesonwrite-project-propertiesalso writes the-Dvalues from the command line, honoring the key filters (#184).- Nested placeholders in default values such as
${defined:${user.home}}resolve without a stray}(#183, reported in #116 by @KyRobbins, whose test from #118 is kept). - m2e now runs
set-system-propertiesandwrite-active-profile-propertiesin workspace builds (#185). - Maven 3.9.0 or later is required (#173). Builds on older Maven versions must stay on 1.3.1.
- Documentation moved from APT to Markdown (#182).
🚨 Removed
- Require Maven 3.9.0 (#173) @slachiewicz
🚀 New features and improvements
- Add includedPropertyKeys and excludedPropertyKeys to read-project-properties (#187) @slachiewicz
- Add an encoding parameter to the read and write goals (#186) @slachiewicz
- Add includeUserProperties to write-project-properties (#184) @slachiewicz
🐛 Bug Fixes
- Map all goals in the m2e lifecycle metadata (#185) @slachiewicz
- Match nested braces in default values of property placeholders (#183) @slachiewicz
📝 Documentation updates
- Convert the site documents from APT to Markdown (#182) @slachiewicz
- Add AGENTS.md (#179) @slachiewicz
👻 Maintenance
- Drop the unused JUnit 4 dependency from the acceptance POM (#181) @slachiewicz
- Keep Dependabot's Maven Wrapper updates on Maven 3.9.x (#180) @slachiewicz
- Apply the JUnit 5 best practices to the tests (#176) @slachiewicz
- Keep Dependabot on Maven 3.9.x (#175) @slachiewicz
- Migrate the unit tests to JUnit 5 (#174) @slachiewicz
🔧 Build
- Use the runners' cached Temurin JDKs in CI (#178) @slachiewicz
- Run CI on Maven 4 (#177) @slachiewicz
- Assign merged pull requests to the release milestone (#172) @slachiewicz
- Check dependencies monthly and group the updates (#171) @slachiewicz
- Run fewer JDKs on macOS and Windows (#170) @slachiewicz
- Use the shared ASF release-drafter workflow (#169) @slachiewicz
📦 Dependency updates
- Drop Hamcrest from tests (#167) @slachiewicz
Thanks to @slachiewicz and @KyRobbins.