|
16 | 16 | <code.coverage.threshold>81%</code.coverage.threshold> |
17 | 17 | <mutation.coverage.threshold>50</mutation.coverage.threshold> |
18 | 18 | <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> |
19 | | - <maven.compiler.release>11</maven.compiler.release> |
| 19 | + <maven.compiler.release>17</maven.compiler.release> |
20 | 20 | <!-- Dependencies --> |
21 | 21 | <exhort-api.version>1.0.6</exhort-api.version> |
22 | 22 | <jackson.version>2.15.0</jackson.version> |
|
30 | 30 | <mockito.version>5.17.0</mockito.version> |
31 | 31 | <!-- Plugins --> |
32 | 32 | <maven-clean-plugin.version>3.2.0</maven-clean-plugin.version> |
33 | | - <maven-compiler-plugin.version>3.11.0</maven-compiler-plugin.version> |
| 33 | + <maven-compiler-plugin.version>3.12.1</maven-compiler-plugin.version> |
34 | 34 | <maven-dependency-plugin.version>3.6.0</maven-dependency-plugin.version> |
35 | 35 | <maven-deploy-plugin.version>3.1.1</maven-deploy-plugin.version> |
36 | 36 | <maven-enforcer-plugin.version>3.3.0</maven-enforcer-plugin.version> |
|
44 | 44 | <maven-site-plugin.version>4.0.0-M6</maven-site-plugin.version> |
45 | 45 | <maven-source-plugin.version>3.2.1</maven-source-plugin.version> |
46 | 46 | <maven-surefire-plugin.version>3.5.3</maven-surefire-plugin.version> |
| 47 | + <maven-shade-plugin.version>3.4.1</maven-shade-plugin.version> |
47 | 48 | <build-helper-maven-plugin.version>3.4.0</build-helper-maven-plugin.version> |
48 | 49 | <extra-enforcer-rules.version>1.6.2</extra-enforcer-rules.version> |
49 | 50 | <flatten-maven-plugin.version>1.4.1</flatten-maven-plugin.version> |
@@ -454,6 +455,11 @@ limitations under the License.]]> |
454 | 455 | <artifactId>spotless-maven-plugin</artifactId> |
455 | 456 | <version>${spotless-maven-plugin.version}</version> |
456 | 457 | </plugin> |
| 458 | + <plugin> |
| 459 | + <groupId>org.apache.maven.plugins</groupId> |
| 460 | + <artifactId>maven-shade-plugin</artifactId> |
| 461 | + <version>${maven-shade-plugin.version}</version> |
| 462 | + </plugin> |
457 | 463 | </plugins> |
458 | 464 | </pluginManagement> |
459 | 465 |
|
@@ -651,6 +657,87 @@ limitations under the License.]]> |
651 | 657 | </execution> |
652 | 658 | </executions> |
653 | 659 | </plugin> |
| 660 | + <plugin> |
| 661 | + <artifactId>maven-jar-plugin</artifactId> |
| 662 | + <configuration> |
| 663 | + <archive> |
| 664 | + <manifest> |
| 665 | + <mainClass>com.redhat.exhort.cli.App</mainClass> |
| 666 | + </manifest> |
| 667 | + </archive> |
| 668 | + </configuration> |
| 669 | + </plugin> |
| 670 | + <plugin> |
| 671 | + <groupId>org.apache.maven.plugins</groupId> |
| 672 | + <artifactId>maven-shade-plugin</artifactId> |
| 673 | + <executions> |
| 674 | + <execution> |
| 675 | + <phase>package</phase> |
| 676 | + <goals> |
| 677 | + <goal>shade</goal> |
| 678 | + </goals> |
| 679 | + <configuration> |
| 680 | + <shadedArtifactAttached>true</shadedArtifactAttached> |
| 681 | + <shadedClassifierName>cli</shadedClassifierName> |
| 682 | + |
| 683 | + <!-- Filters to exclude problematic files --> |
| 684 | + <filters> |
| 685 | + <filter> |
| 686 | + <artifact>*:*</artifact> |
| 687 | + <excludes> |
| 688 | + <!-- Exclude module-info.class files to avoid strong encapsulation warnings --> |
| 689 | + <exclude>module-info.class</exclude> |
| 690 | + <exclude>META-INF/versions/*/module-info.class</exclude> |
| 691 | + <!-- Exclude signature files --> |
| 692 | + <exclude>META-INF/*.SF</exclude> |
| 693 | + <exclude>META-INF/*.DSA</exclude> |
| 694 | + <exclude>META-INF/*.RSA</exclude> |
| 695 | + <!-- Exclude duplicate MANIFEST.MF files (will be recreated) --> |
| 696 | + <exclude>META-INF/MANIFEST.MF</exclude> |
| 697 | + </excludes> |
| 698 | + </filter> |
| 699 | + </filters> |
| 700 | + |
| 701 | + <!-- Transformers to handle overlapping resources --> |
| 702 | + <transformers> |
| 703 | + <!-- Main class transformer --> |
| 704 | + <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> |
| 705 | + <mainClass>com.redhat.exhort.cli.App</mainClass> |
| 706 | + </transformer> |
| 707 | + |
| 708 | + <!-- Service files transformer for Jackson and other services --> |
| 709 | + <transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/> |
| 710 | + |
| 711 | + <!-- Append NOTICE files --> |
| 712 | + <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> |
| 713 | + <resource>META-INF/NOTICE</resource> |
| 714 | + </transformer> |
| 715 | + <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> |
| 716 | + <resource>META-INF/NOTICE.txt</resource> |
| 717 | + </transformer> |
| 718 | + <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> |
| 719 | + <resource>META-INF/NOTICE.md</resource> |
| 720 | + </transformer> |
| 721 | + |
| 722 | + <!-- Append LICENSE files --> |
| 723 | + <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> |
| 724 | + <resource>META-INF/LICENSE</resource> |
| 725 | + </transformer> |
| 726 | + <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> |
| 727 | + <resource>META-INF/LICENSE.txt</resource> |
| 728 | + </transformer> |
| 729 | + <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> |
| 730 | + <resource>META-INF/LICENSE.md</resource> |
| 731 | + </transformer> |
| 732 | + |
| 733 | + </transformers> |
| 734 | + |
| 735 | + <!-- Create non-verbose output --> |
| 736 | + <createDependencyReducedPom>false</createDependencyReducedPom> |
| 737 | + </configuration> |
| 738 | + </execution> |
| 739 | + </executions> |
| 740 | + </plugin> |
654 | 741 | <plugin> |
655 | 742 | <groupId>com.diffplug.spotless</groupId> |
656 | 743 | <artifactId>spotless-maven-plugin</artifactId> |
@@ -813,9 +900,6 @@ limitations under the License.]]> |
813 | 900 | <plugin> |
814 | 901 | <groupId>de.sormuras.junit</groupId> |
815 | 902 | <artifactId>junit-platform-maven-plugin</artifactId> |
816 | | - <version>${junit-platform-maven-plugin.version}</version> |
817 | | - <configuration> |
818 | | - </configuration> |
819 | 903 | </plugin> |
820 | 904 | </plugins> |
821 | 905 | </build> |
|
0 commit comments