|
16 | 16 | <properties> |
17 | 17 | <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> |
18 | 18 | <maven.compiler.release>8</maven.compiler.release> |
| 19 | + <project.build.outputTimestamp>2026-01-28T08:00:00Z</project.build.outputTimestamp> |
19 | 20 |
|
20 | 21 | <!-- dependencies --> |
21 | 22 | <gson.version>2.12.1</gson.version> |
|
31 | 32 | <jmh.version>1.37</jmh.version> |
32 | 33 |
|
33 | 34 | <!-- build plugin dependencies --> |
| 35 | + <central-publishing.version>0.10.0</central-publishing.version> |
34 | 36 | <dependency-check.version>12.1.9</dependency-check.version> |
| 37 | + <exec-maven.version>3.6.2</exec-maven.version> |
35 | 38 | <jacoco.version>0.8.14</jacoco.version> |
36 | | - <central-publishing.version>0.7.0</central-publishing.version> |
| 39 | + <mvn-compiler.version>3.14.1</mvn-compiler.version> |
| 40 | + <mvn-clean.version>3.5.0</mvn-clean.version> |
| 41 | + <mvn-deploy.version>3.1.4</mvn-deploy.version> |
| 42 | + <mvn-enforcer.version>3.6.2</mvn-enforcer.version> |
| 43 | + <mvn-install.version>3.1.4</mvn-install.version> |
| 44 | + <mvn-javadoc.version>3.12.0</mvn-javadoc.version> |
| 45 | + <mvn-jar.version>3.5.0</mvn-jar.version> |
| 46 | + <mvn-gpg.version>3.2.8</mvn-gpg.version> |
| 47 | + <mvn-resources.version>3.3.1</mvn-resources.version> |
| 48 | + <mvn-shade.version>3.6.1</mvn-shade.version> |
| 49 | + <mvn-source.version>3.4.0</mvn-source.version> |
| 50 | + <mvn-surefire.version>3.5.4</mvn-surefire.version> |
37 | 51 |
|
38 | 52 | <!-- Property used by surefire to determine jacoco engine --> |
39 | 53 | <surefire.jacoco.args /> |
|
134 | 148 | <plugin> |
135 | 149 | <groupId>org.apache.maven.plugins</groupId> |
136 | 150 | <artifactId>maven-enforcer-plugin</artifactId> |
137 | | - <version>3.6.2</version> |
| 151 | + <version>${mvn-enforcer.version}</version> |
138 | 152 | <executions> |
139 | 153 | <execution> |
140 | 154 | <id>enforce-java</id> |
|
154 | 168 | </plugin> |
155 | 169 | <plugin> |
156 | 170 | <artifactId>maven-compiler-plugin</artifactId> |
157 | | - <version>3.14.1</version> |
| 171 | + <version>${mvn-compiler.version}</version> |
158 | 172 | <configuration> |
159 | 173 | <encoding>UTF-8</encoding> |
160 | 174 | <showWarnings>true</showWarnings> |
|
192 | 206 | </plugin> |
193 | 207 | <plugin> |
194 | 208 | <artifactId>maven-shade-plugin</artifactId> |
195 | | - <version>3.6.1</version> |
| 209 | + <version>${mvn-shade.version}</version> |
196 | 210 | <executions> |
197 | 211 | <execution> |
198 | 212 | <phase>package</phase> |
|
230 | 244 | <plugin> |
231 | 245 | <groupId>org.codehaus.mojo</groupId> |
232 | 246 | <artifactId>exec-maven-plugin</artifactId> |
233 | | - <version>3.6.2</version> |
| 247 | + <version>${exec-maven.version}</version> |
234 | 248 | <executions> |
235 | 249 | <execution> |
236 | 250 | <phase>package</phase> |
|
243 | 257 | <arguments> |
244 | 258 | <argument>--verbose</argument> |
245 | 259 | <argument>--update</argument> |
| 260 | + <argument>--date=${project.build.outputTimestamp}</argument> |
246 | 261 | <argument>--file=${project.build.directory}/${project.build.finalName}.jar</argument> |
247 | 262 | <argument>META-INF/versions/9/module-info.class</argument> |
248 | 263 | <argument>META-INF/versions/22/module-info.class</argument> |
|
254 | 269 | <plugin> |
255 | 270 | <groupId>org.apache.maven.plugins</groupId> |
256 | 271 | <artifactId>maven-surefire-plugin</artifactId> |
257 | | - <version>3.5.4</version> |
| 272 | + <version>${mvn-surefire.version}</version> |
258 | 273 | <configuration> |
259 | 274 | <argLine>@{surefire.jacoco.args} -Dnet.bytebuddy.experimental=true</argLine> |
260 | 275 | </configuration> |
261 | 276 | </plugin> |
262 | 277 | <plugin> |
263 | 278 | <groupId>org.apache.maven.plugins</groupId> |
264 | 279 | <artifactId>maven-jar-plugin</artifactId> |
265 | | - <version>3.5.0</version> |
| 280 | + <version>${mvn-jar.version}</version> |
266 | 281 | <configuration> |
267 | 282 | <archive> |
268 | 283 | <manifestEntries> |
|
274 | 289 | </plugin> |
275 | 290 | <plugin> |
276 | 291 | <artifactId>maven-source-plugin</artifactId> |
277 | | - <version>3.4.0</version> |
| 292 | + <version>${mvn-source.version}</version> |
278 | 293 | <executions> |
279 | 294 | <execution> |
280 | 295 | <id>attach-sources</id> |
|
286 | 301 | </plugin> |
287 | 302 | <plugin> |
288 | 303 | <artifactId>maven-javadoc-plugin</artifactId> |
289 | | - <version>3.12.0</version> |
| 304 | + <version>${mvn-javadoc.version}</version> |
290 | 305 | <executions> |
291 | 306 | <execution> |
292 | 307 | <id>attach-javadocs</id> |
|
325 | 340 | </tags> |
326 | 341 | </configuration> |
327 | 342 | </plugin> |
| 343 | + |
| 344 | + <!-- for reproducible builds, fix version for plugins bound in built-in jar lifecycle --> |
| 345 | + <plugin> |
| 346 | + <groupId>org.apache.maven.plugins</groupId> |
| 347 | + <artifactId>maven-clean-plugin</artifactId> |
| 348 | + <version>${mvn-clean.version}</version> |
| 349 | + </plugin> |
| 350 | + <plugin> |
| 351 | + <groupId>org.apache.maven.plugins</groupId> |
| 352 | + <artifactId>maven-install-plugin</artifactId> |
| 353 | + <version>${mvn-install.version}</version> |
| 354 | + </plugin> |
| 355 | + <plugin> |
| 356 | + <groupId>org.apache.maven.plugins</groupId> |
| 357 | + <artifactId>maven-deploy-plugin</artifactId> |
| 358 | + <version>${mvn-deploy.version}</version> |
| 359 | + </plugin> |
| 360 | + <plugin> |
| 361 | + <groupId>org.apache.maven.plugins</groupId> |
| 362 | + <artifactId>maven-resources-plugin</artifactId> |
| 363 | + <version>${mvn-resources.version}</version> |
| 364 | + </plugin> |
328 | 365 | </plugins> |
329 | 366 | </build> |
330 | 367 |
|
|
394 | 431 | <plugins> |
395 | 432 | <plugin> |
396 | 433 | <artifactId>maven-gpg-plugin</artifactId> |
397 | | - <version>3.2.8</version> |
| 434 | + <version>${mvn-gpg.version}</version> |
398 | 435 | <executions> |
399 | 436 | <execution> |
400 | 437 | <id>sign-artifacts</id> |
|
0 commit comments