handle property order: please keep in alphabetical order
expected the plugin to handle property order, to give natural sort and grouping.
property files are the perfect example why its important there to have form an order to avoid DRY and group what belongs together:
- https://github.com/quarkusio/quarkus/pull/48382
- https://github.com/quarkusio/quarkus/blob/cfe7a0522d54783a71dc0174d58d27e678766f88/independent-projects/parent/pom.xml#L19
<properties>
<!-- Plugin versions (please keep in alphabetical order) -->
<format.skip>false</format.skip>
<insecure.repositories>ERROR</insecure.repositories>
<jdk.min.version>${maven.compiler.argument.source}</jdk.min.version>
<maven.compiler.argument.source>${maven.compiler.source}</maven.compiler.argument.source>
<maven.compiler.argument.target>${maven.compiler.target}</maven.compiler.argument.target>
<maven.compiler.argument.testSource>${maven.compiler.testSource}</maven.compiler.argument.testSource>
<maven.compiler.argument.testTarget>${maven.compiler.testTarget}</maven.compiler.argument.testTarget>
<maven.compiler.parameters>true</maven.compiler.parameters>
<maven.compiler.release>17</maven.compiler.release>
<maven.compiler.source>${maven.compiler.release}</maven.compiler.source>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>${maven.compiler.release}</maven.compiler.target>
<maven.compiler.target>17</maven.compiler.target>
<maven.compiler.testSource>${maven.compiler.source}</maven.compiler.testSource>
<maven.compiler.testTarget>${maven.compiler.target}</maven.compiler.testTarget>
<maven.javadoc.failOnError>false</maven.javadoc.failOnError>
<maven.min.version>3.9.6</maven.min.version>
<project.build.outputTimestamp>2024-01-01T00:00:00Z</project.build.outputTimestamp>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<useReleaseProfile>false</useReleaseProfile>
<version.archetype.plugin>3.4.0</version.archetype.plugin>
<version.buildhelper.plugin>3.6.1</version.buildhelper.plugin>
<version.buildnumber.plugin>3.2.1</version.buildnumber.plugin>
<version.clean.plugin>3.5.0</version.clean.plugin>
<version.compiler.plugin>3.14.0</version.compiler.plugin>
<version.dependency.plugin>3.8.1</version.dependency.plugin>
<version.deploy.plugin>3.1.4</version.deploy.plugin>
<version.enforcer.plugin>3.5.0</version.enforcer.plugin>
<version.exec.plugin>3.5.1</version.exec.plugin>
<version.failsafe.plugin>${version.surefire.plugin}</version.failsafe.plugin>
<version.forbiddenapis-maven-plugin>3.4</version.forbiddenapis-maven-plugin>
<version.formatter.plugin>2.26.0</version.formatter.plugin>
<version.gpg.plugin>3.2.7</version.gpg.plugin>
<version.impsort.plugin>1.12.0</version.impsort.plugin>
<version.install.plugin>3.1.4</version.install.plugin>
<version.jar.plugin>3.4.2</version.jar.plugin>
<version.javadoc.plugin>3.11.2</version.javadoc.plugin>
<version.plugin.plugin>3.15.1</version.plugin.plugin>
<version.release.plugin>3.1.1</version.release.plugin>
<version.resources.plugin>3.3.1</version.resources.plugin>
<!-- Do not update for now as it is causing test issues in integration-tests/devmode
java.lang.NoClassDefFoundError: com/salesforce/jprotoc/Generator -->
<version.shade.plugin>3.2.1</version.shade.plugin>
<version.source.plugin>3.3.1</version.source.plugin>
<version.surefire.plugin>3.5.3</version.surefire.plugin>
<version.versions.plugin>2.18.0</version.versions.plugin>
<version.yaml-properties.plugin>1.1.3</version.yaml-properties.plugin>
</properties>
whats the custom order as not alphabetical?
booleans first, then remaining?
before:
<resource>
<directory>${project.build.sourceDirectory}</directory>
<includes>
<include>**/Version.properties</include>
</includes>
<filtering>true</filtering>
</resource>
after:
<resource>
<filtering>true</filtering>
<directory>${project.build.sourceDirectory}</directory>
<includes>
<include>**/Version.properties</include>
</includes>
</resource>
The sort order of all standard elements are according standards, mostly according to the principle "most-significant-element-first": https://github.com/Ekryd/sortpom/wiki/PredefinedSortOrderProfiles The sort order can be changed and you can even define your own sort order if you want to.
Also, sorry for the late reply!