|
859 | 859 | <goals> |
860 | 860 | <goal>enforce</goal> |
861 | 861 | </goals> |
862 | | - </execution> |
863 | | - </executions> |
864 | | - <configuration> |
865 | | - <rules> |
866 | | - <!-- |
867 | | - Standard Rules |
868 | | - https://maven.apache.org/enforcer/enforcer-rules/ |
869 | | - --> |
870 | | - <requireMavenVersion> |
871 | | - <version>${scijava.mvn.version}</version> |
872 | | - </requireMavenVersion> |
873 | | - <requirePluginVersions> |
874 | | - <message>Plugins need to be versioned!</message> |
875 | | - </requirePluginVersions> |
876 | | - <requireJavaVersion> |
877 | | - <version>${scijava.jvm.build.version}</version> |
878 | | - </requireJavaVersion> |
879 | | - |
880 | | - <!-- |
881 | | - Extra Enforcer Rules |
882 | | - org.codehaus.mojo:extra-enforcer-rules |
883 | | - https://www.mojohaus.org/extra-enforcer-rules/ |
884 | | - --> |
885 | | - |
886 | | - <!-- |
887 | | - Ensure no two dependencies ship the same class. |
888 | | - Otherwise, much havoc may be wreaked at runtime. |
889 | | - --> |
890 | | - <banDuplicateClasses> |
891 | | - <message>No Duplicate Classes Allowed! |
| 862 | + <configuration> |
| 863 | + <rules> |
| 864 | + <!-- |
| 865 | + Standard Rules |
| 866 | + https://maven.apache.org/enforcer/enforcer-rules/ |
| 867 | + --> |
| 868 | + <requireMavenVersion> |
| 869 | + <version>${scijava.mvn.version}</version> |
| 870 | + </requireMavenVersion> |
| 871 | + <requirePluginVersions> |
| 872 | + <message>Plugins need to be versioned!</message> |
| 873 | + </requirePluginVersions> |
| 874 | + <requireJavaVersion> |
| 875 | + <version>${scijava.jvm.build.version}</version> |
| 876 | + </requireJavaVersion> |
| 877 | + |
| 878 | + <!-- |
| 879 | + Extra Enforcer Rules |
| 880 | + org.codehaus.mojo:extra-enforcer-rules |
| 881 | + https://www.mojohaus.org/extra-enforcer-rules/ |
| 882 | + --> |
| 883 | + |
| 884 | + <!-- |
| 885 | + Ensure no two dependencies ship the same class. |
| 886 | + Otherwise, much havoc may be wreaked at runtime. |
| 887 | + --> |
| 888 | + <banDuplicateClasses> |
| 889 | + <message>No Duplicate Classes Allowed! |
892 | 890 | - For duplicate transitive dependencies, add dependency exclusions. |
893 | 891 | - For duplications between direct dependencies, resolve or add |
894 | 892 | ignored classes to this rule's configuration.</message> |
895 | | - <findAllDuplicates>true</findAllDuplicates> |
896 | | - <ignoreClasses>${allowedDuplicateClasses}</ignoreClasses> |
897 | | - </banDuplicateClasses> |
898 | | - |
899 | | - <!-- |
900 | | - Require developers and contributors to use SciJava team roles. |
901 | | - See: https://imagej.net/Team |
902 | | - --> |
903 | | - <requireDeveloperRoles> |
904 | | - <validRoles>${scijava.team.roles}</validRoles> |
905 | | - </requireDeveloperRoles> |
906 | | - <requireContributorRoles> |
907 | | - <validRoles>${scijava.team.roles}</validRoles> |
908 | | - </requireContributorRoles> |
909 | | - |
910 | | - <!-- |
911 | | - Fail if a dependency requires a too-new version of Java. |
912 | | - --> |
913 | | - <enforceBytecodeVersion> |
914 | | - <maxJdkVersion>${scijava.jvm.version}</maxJdkVersion> |
915 | | - <excludes> |
916 | | - <exclude>com.headius:invokebinder</exclude> |
917 | | - <exclude>com.sun:tools</exclude> |
918 | | - </excludes> |
919 | | - <ignoreClasses> |
920 | | - <ignoreClass>module-info</ignoreClass> |
921 | | - </ignoreClasses> |
922 | | - <ignoredScopes> |
923 | | - <ignoredScope>test</ignoredScope> |
924 | | - </ignoredScopes> |
925 | | - </enforceBytecodeVersion> |
926 | | - |
927 | | - <!-- |
928 | | - SciJava Maven Plugin |
929 | | - org.scijava:scijava-maven-plugin |
930 | | - https://github.com/scijava/scijava-maven-plugin |
931 | | - --> |
932 | | - |
933 | | - <!-- Require inheriting POMs to populate key elements. --> |
934 | | - <requireElements implementation="org.scijava.maven.plugin.enforcer.RequireElements"> |
935 | | - <elements> |
936 | | - <element>name</element> |
937 | | - <element>description</element> |
938 | | - <element>url</element> |
939 | | - <element>inceptionYear</element> |
940 | | - <element>organization</element> |
941 | | - <element>licenses</element> |
942 | | - <element>developers</element> |
943 | | - <element>contributors</element> |
944 | | - <element>mailingLists</element> |
945 | | - <element>scm</element> |
946 | | - <element>issueManagement</element> |
947 | | - <element>ciManagement</element> |
948 | | - <element>properties//license.licenseName</element> |
949 | | - <element>properties//license.copyrightOwners</element> |
950 | | - </elements> |
951 | | - </requireElements> |
952 | | - |
953 | | - <!-- |
954 | | - Require builds to be reproducible. |
955 | | - This means no snapshot dependencies! |
956 | | - --> |
957 | | - <requireReproducibleBuilds implementation="org.scijava.maven.plugin.enforcer.RequireReproducibleBuilds"> |
958 | | - <groupIds>${scijava.groupIds}</groupIds> |
959 | | - </requireReproducibleBuilds> |
960 | | - </rules> |
961 | | - </configuration> |
| 893 | + <findAllDuplicates>true</findAllDuplicates> |
| 894 | + <ignoreClasses>${allowedDuplicateClasses}</ignoreClasses> |
| 895 | + </banDuplicateClasses> |
| 896 | + |
| 897 | + <!-- |
| 898 | + Require developers and contributors to use SciJava team roles. |
| 899 | + See: https://imagej.net/Team |
| 900 | + --> |
| 901 | + <requireDeveloperRoles> |
| 902 | + <validRoles>${scijava.team.roles}</validRoles> |
| 903 | + </requireDeveloperRoles> |
| 904 | + <requireContributorRoles> |
| 905 | + <validRoles>${scijava.team.roles}</validRoles> |
| 906 | + </requireContributorRoles> |
| 907 | + |
| 908 | + <!-- |
| 909 | + Fail if a dependency requires a too-new version of Java. |
| 910 | + --> |
| 911 | + <enforceBytecodeVersion> |
| 912 | + <maxJdkVersion>${scijava.jvm.version}</maxJdkVersion> |
| 913 | + <excludes> |
| 914 | + <exclude>com.headius:invokebinder</exclude> |
| 915 | + <exclude>com.sun:tools</exclude> |
| 916 | + </excludes> |
| 917 | + <ignoreClasses> |
| 918 | + <ignoreClass>module-info</ignoreClass> |
| 919 | + </ignoreClasses> |
| 920 | + <ignoredScopes> |
| 921 | + <ignoredScope>test</ignoredScope> |
| 922 | + </ignoredScopes> |
| 923 | + </enforceBytecodeVersion> |
| 924 | + |
| 925 | + <!-- |
| 926 | + SciJava Maven Plugin |
| 927 | + org.scijava:scijava-maven-plugin |
| 928 | + https://github.com/scijava/scijava-maven-plugin |
| 929 | + --> |
| 930 | + |
| 931 | + <!-- Require inheriting POMs to populate key elements. --> |
| 932 | + <requireElements implementation="org.scijava.maven.plugin.enforcer.RequireElements"> |
| 933 | + <elements> |
| 934 | + <element>name</element> |
| 935 | + <element>description</element> |
| 936 | + <element>url</element> |
| 937 | + <element>inceptionYear</element> |
| 938 | + <element>organization</element> |
| 939 | + <element>licenses</element> |
| 940 | + <element>developers</element> |
| 941 | + <element>contributors</element> |
| 942 | + <element>mailingLists</element> |
| 943 | + <element>scm</element> |
| 944 | + <element>issueManagement</element> |
| 945 | + <element>ciManagement</element> |
| 946 | + <element>properties//license.licenseName</element> |
| 947 | + <element>properties//license.copyrightOwners</element> |
| 948 | + </elements> |
| 949 | + </requireElements> |
| 950 | + |
| 951 | + <!-- |
| 952 | + Require builds to be reproducible. |
| 953 | + This means no snapshot dependencies! |
| 954 | + --> |
| 955 | + <requireReproducibleBuilds implementation="org.scijava.maven.plugin.enforcer.RequireReproducibleBuilds"> |
| 956 | + <groupIds>${scijava.groupIds}</groupIds> |
| 957 | + </requireReproducibleBuilds> |
| 958 | + </rules> |
| 959 | + </configuration> |
| 960 | + </execution> |
| 961 | + </executions> |
962 | 962 | </plugin> |
963 | 963 |
|
964 | 964 | <plugin> |
|
0 commit comments